17.1 Development Tools for Toolkit Contributors
This appendix documents the tools used to build and maintain the Bridgeframe Toolkit. This information is for contributors who want to modify or extend the toolkit, not for practitioners using the toolkit content.
17.1.1 Technology Stack
The Bridgeframe Toolkit is built with:
| Tool | Purpose | Version |
|---|---|---|
| Quarto | Document publishing system | 1.4+ |
| VS Code | Code editor | Current |
| GitHub Copilot | AI-assisted development | Current |
| Git/GitHub | Version control and hosting | N/A |
| GitHub Actions | Automated publishing | N/A |
| Mermaid | Diagram generation | Built into Quarto |
17.1.2 AI-Assisted Development
GitHub Copilot is used throughout the development of this toolkit for:
- Refining ideas: Brainstorming content structure and terminology mappings
- Analysis: Reviewing and improving BA-PH framework alignments
- Code development: Generating Mermaid diagrams, R scripts, and configuration files
17.1.2.1 LLM Models Used
GitHub Copilot provides access to multiple large language models:
| Provider | Models | Primary Use |
|---|---|---|
| Anthropic | Claude (Sonnet, Opus) | Complex analysis, long-form content |
| Gemini | Research, fact-checking | |
| OpenAI | GPT-4, GPT-4o | Code generation, quick edits |
17.1.2.2 Copilot Features
- Chat: Interactive conversation for complex tasks
- Inline suggestions: Real-time code and content completion
- Agent mode: Multi-step tasks with file creation and terminal access
17.1.2.3 Deep Research Tools
Research and analysis is additionally supported by deep research features in:
- Google Gemini: Extended research capabilities for comprehensive literature review and framework analysis
- OpenAI ChatGPT: Deep research mode for exploring complex BA-PH terminology mappings and implementation science concepts
These tools complement GitHub Copilot by providing broader research context beyond the immediate codebase.
17.1.2.4 Project Context
The .github/copilot-instructions.md file provides Copilot with project-specific context including:
- Repository structure and conventions
- BA-PH terminology mappings
- CancerSurv case study details
- Formatting standards and style guidelines
17.1.3 Local Development Setup
17.1.3.1 Prerequisites
- Install Quarto: Download from quarto.org
- Install VS Code: Download from code.visualstudio.com
- Install Git: Download from git-scm.com
- Install Quarto VS Code Extension: Search “Quarto” in VS Code extensions
17.1.3.2 Clone the Repository
git clone https://github.com/andre-inter-collab-llc/Bridgeframe-Toolkit.git
cd Bridgeframe-Toolkit17.1.3.3 Preview Locally
quarto previewThis starts a local server and opens the book in your browser. Changes to .qmd files automatically refresh.
17.1.3.4 Render the Book
quarto renderOutput is generated in the _book/ directory.
17.1.4 Repository Structure
Bridgeframe-Toolkit/
├── _quarto.yml # Book configuration
├── _brand.yml # Branding (colors, fonts, logo)
├── index.qmd # Landing page
├── preface.qmd # Author preface
├── references.qmd # Bibliography
├── chapters/ # Book chapters
│ ├── 01-introduction.qmd
│ ├── ...
│ └── C-glossary.qmd
├── assets/
│ ├── branding/ # Logos, icons, templates
│ ├── references/ # Bibliography files
│ └── styles/ # Custom SCSS
├── .github/
│ ├── copilot-instructions.md # AI assistant context
│ └── workflows/
│ └── publish.yml # GitHub Actions workflow
└── _book/ # Generated output (gitignored)
17.1.5 Configuration Files
17.1.5.1 _quarto.yml
The main configuration file controls:
- Book metadata (title, author, date)
- Chapter organization
- Output formats (HTML, DOCX)
- Theme and styling
- Bibliography settings
Key sections:
project:
type: book
output-dir: _book
book:
title: "Bridgeframe"
chapters:
- index.qmd
- part: "Foundations"
chapters:
- chapters/01-introduction.qmd
# ...
format:
html:
theme:
- brand
- assets/styles/custom.scss
docx:
reference-doc: assets/branding/templates/IntersectCollab-reference-doc.docx17.1.5.2 _brand.yml
Controls visual branding:
color:
palette:
blue: "#2494f7"
teal: "#00a4bb"
# ...
primary: blue
secondary: teal
typography:
base: "Inter"
headings:
family: "Inter"
weight: 800
monospace: "Fira Code"
logo:
medium: assets/branding/logos/intersect-logo.png17.1.6 Writing Content
17.1.6.1 Quarto Markdown Basics
Quarto uses extended Markdown. Key features:
Headings:
# Chapter Title (H1)
## Section (H2)
### Subsection (H3)Callout Boxes:
::: {.callout-note title="CancerSurv Example"}
Content here...
:::
::: {.callout-tip}
Tip content...
:::
::: {.callout-warning}
Warning content...
:::Tables:
| Column 1 | Column 2 |
|:---------|:---------|
| Data 1 | Data 2 |Citations:
According to the BABOK [@babok2015], requirements should be...17.1.6.2 Mermaid Diagrams
Diagrams are created with Mermaid syntax in code blocks:
```{mermaid}
%%| label: fig-example
%%| fig-cap: "Example Diagram"
flowchart LR
A[Start] --> B[Process]
B --> C[End]
```Common diagram types:
flowchart: Process flows, architecturesequenceDiagram: Interactions over timeerDiagram: Data modelsgantt: Project timelines
17.1.6.3 Cross-References
Reference figures, tables, and sections:
See @fig-example for the diagram.
As discussed in @sec-planning...17.1.7 Publishing
17.1.7.1 GitHub Pages Deployment
The book automatically publishes to GitHub Pages when changes are pushed to main. The workflow (.github/workflows/publish.yml) handles rendering and deployment.
17.1.7.2 Manual Publishing
To publish manually:
quarto publish gh-pagesThis creates/updates the gh-pages branch with rendered content.
17.1.7.3 Initial Setup
For first-time setup:
- Create
.nojekyllfile in repository root (empty file) - Run
quarto publish gh-pagesonce locally - Commit the generated
_publish.ymlfile - Enable GitHub Pages in repository settings (source:
gh-pagesbranch)
17.1.8 Contributing
17.1.8.1 Branch Strategy
main: Production-ready content- Feature branches: For new content or significant changes
- Pull requests: For review before merging to main
17.1.8.2 Content Guidelines
- Follow the BA-PH dual framing throughout
- Include CancerSurv examples in callout boxes
- Use tables for terminology mapping
- Avoid em dashes and en dashes; rewrite sentences instead
- Every
.qmdfile needs YAML frontmatter with at least atitle
17.1.8.3 Style Guidelines
- First-person voice only in Preface and personal sections
- Professional/instructional tone for toolkit content
- Academic yet accessible language
- Ground claims in evidence where possible
17.1.9 Troubleshooting
17.1.9.1 Common Issues
Quarto preview not updating: - Check for syntax errors in YAML frontmatter - Restart preview with quarto preview
Mermaid diagram not rendering: - Verify syntax at mermaid.live - Check for unsupported features
GitHub Pages not updating: - Check Actions tab for workflow failures - Verify gh-pages branch exists - Check repository Pages settings
Bibliography not working: - Verify references.bib exists at specified path - Check citation key matches bib entry - Ensure bibliography field in _quarto.yml is correct