Skip to content

Contributing to the wiki

This docs site is built with Astro Starlight. Pages are just Markdown files. You don’t need to know any web stuff.

Add a .md file under src/content/docs/ wherever appropriate:

src/content/docs/
setup/ # install & getting started
general-resources/ # general tutorials
teleop/ # teleop docs
autonomy/
navigation/ # nav docs
perception/ # perception docs
localization/ # localization docs
esw/ # embedded software docs
drone/ # drone docs
...

Every page needs a title in the frontmatter at the top:

---
title: "My New Page"
---
## A section
- bullets
[links](https://mrover.org)
```bash
code blocks
```

Open astro.config.mjs and find the sidebar array. Locate the section your page belongs to and add an entry:

{
label: 'Navigation',
collapsed: true,
items: [
{ label: 'Navigation', slug: 'autonomy/navigation/overview' },
{ label: 'My New Page', slug: 'autonomy/navigation/my-new-page' }, // add this
],
},

The slug matches the file path under src/content/docs/ without the .md extension.

Terminal window
cd ~/mrover-docs
bun install # first time only
bun run dev

Open localhost:4321 in your browser

Put images in public/ and reference them:

![description](/my-image.png)

Objects in public will be built to root, so reference them from root.

GitHub-flavored > [!NOTE] syntax does not work here. Use Starlight’s ::: syntax:

:::note
This is a note.
:::
:::caution
This is a warning.
:::
:::tip
This is a tip.
:::