Team Documentation
This guide is designed to introduce non-technical members of our team to contribute to new documentation to this website.
If you didn’t read the entries regarding Git/GitHub I advise you read them here
In order to contribute documentation, there are several tools and skills you will need to have a solid understanding of.
Install tools
Section titled “Install tools”Visual Studio Code + Dev Containers
- Download VS Code for your platform from code.visualstudio.com.
- Run the installer and launch VS Code once it completes.
- Install the Dev Containers and GitHub Pull Requests extensions from the Extensions view.
- Sign in with your Microsoft or GitHub account to sync settings between machines (optional but recommended).
Verify the command line launcher works: open a terminal and run:
code —version
Node.js (includes npm)
- Grab the current LTS installer from nodejs.org (macOS pkg, Windows .msi, or Linux instructions).
- Run the installer and accept defaults so Node, npm, and PATH entries are configured automatically.
- Reopen your terminal to ensure the new PATH is picked up.
Confirm both Node and npm are available:
node —version npm —version
WSL 2 + Docker Desktop (Windows)
Open PowerShell as Administrator and install WSL + Ubuntu:
wsl —install —distribution Ubuntu- Restart when prompted, then create your Linux username/password.
Update packages in Ubuntu:
sudo apt update && sudo apt upgrade -y- Download Docker Desktop, run the installer, and enable the WSL 2 backend.
- After Docker launches, go to Settings → Resources → WSL Integration and turn it on for Ubuntu.
Verify everything is wired up from PowerShell or the VS Code terminal:
wsl —list —verbose docker version
Google Chrome
- Download Chrome from google.com/chrome.
- Run the installer (drag the app into Applications on macOS, or follow the Windows wizard).
- Sign in with your robotics Google account to sync bookmarks and extensions.
- Install the React DevTools and Lighthouse extensions to help debug documentation changes.
- Set Chrome as your default browser so Dev Server links open there automatically.
Bun Runtime
Open a terminal and run the official install script:
curl -fsSL https://bun.sh/install | bash- Restart your terminal (or source your shell profile) so the
bunbinary is on PATH. - Inside the repo root, run
bun installonce to install dependencies with Bun’s package manager. Verify Bun is available:
bun —version
Clone the Repository & Open the Dev Container
Section titled “Clone the Repository & Open the Dev Container”-
Pick a working folder (for example
~/Projects) and clone the docs site:Terminal window git clone https://github.com/BC-Robotics-4504/bcr-docs.gitcd bcr-docs -
Launch VS Code from the repo root so the Dev Container definition is detected:
Terminal window code . -
When VS Code prompts to “Reopen in Container,” click it. Confirm Docker Desktop is running first or the build will fail.
-
Wait for the container to build (first run takes 3‑5 minutes). Once it finishes you’ll see
Dev Container: bcr-docsin the status bar. -
Open a terminal inside VS Code (`Ctrl+“) and install dependencies if needed:
Terminal window bun install -
Start the local dev server:
Terminal window bun run devVS Code will forward the port; open the browser link to preview live changes.
Where to Put Documentation
Section titled “Where to Put Documentation”-
All docs live under
src/content/docs. Group topics by the existing folder structure (programming,electronics, etc.). -
Create a new
.mdxfile in the correct folder. Example:src/content/docs/programming/Contributing/new-guide.mdx. -
Each file begins with frontmatter:
---title: Awesome Topicdescription: 'One-line summary'sidebar:order: 5--- -
After the frontmatter, write Markdown as usual. MDX adds the ability to import components (e.g.,
Aside,Steps) and use them inline. -
Basic MDX reminders:
-
Headings use
#,##,###. -
Wrap code blocks with triple backticks and add a language (
```bash). -
Use JSX-style syntax for components:
import { Aside } from '@astrojs/starlight/components';<Aside type="note">Short callouts keep readers on track.</Aside>
-
-
Keep sentences short and add bullet lists for instructions; Starlight prefers concise paragraphs.
Git Workflow: Branch, Commit, and PR
Section titled “Git Workflow: Branch, Commit, and PR”Follow this flow so your changes are easy to review.
-
Make sure
mainis up to date:Terminal window git checkout maingit pull origin main -
Create a feature branch that describes your work:
Terminal window git checkout -b docs/add-contributing-guide -
Edit or add MDX files, then check what changed:
Terminal window git status -
Stage and commit with a descriptive message:
Terminal window git add src/content/docs/programming/Contributing/docs-site.mdxgit commit -m "docs: expand contributor install & workflow guide" -
Push the branch to GitHub:
Terminal window git push -u origin docs/add-contributing-guide -
Open GitHub, you’ll see a “Compare & pull request” banner. Click it, fill in the summary, and submit the PR.
-
Share the PR link in the team channel for review. Once approved, merge via the GitHub UI.