Contributing
We welcome contributions to the QuantaJS documentation site.
Contributing to the library
Looking to contribute to QuantaJS itself rather than the documentation? See the library's CONTRIBUTING.md and check the core issue tracker. The rest of this guide covers contributing to this documentation site.
Getting Started
Fork the Repository
Fork quanta-js/quanta-docs on GitHub.
Clone Your Fork
Clone your fork:
git clone https://github.com/<your-username>/quanta-docs.git
cd quanta-docs
Install Dependencies
Use Node.js 22 or later, then install dependencies:
npm install
Start the Development Server
npm run dev
Open the Site
Open http://localhost:3000.
Add or edit a documentation page
Documentation pages live at:
contents/docs/<section>/<page>/index.mdx
To add a new page:
- Create its
index.mdxfile withtitleanddescriptionfrontmatter. - Add the page to
lib/routes-config.tsin the appropriate section. - Run the development server and confirm the page appears in the sidebar.
- Run
npm run buildbefore opening the pull request.
The sidebar order in lib/routes-config.ts also drives previous/next navigation.
MDX components
The site registers reusable MDX components in lib/markdown.ts. Available components include:
NoteTabs,TabsList,TabsTrigger, andTabsContentStepperandStepperItemCalloutFilesOutlet
Use the existing docs pages as examples when choosing a component.
Blog posts
Blog posts live in contents/blogs/ as .mdx files. Their frontmatter includes:
titledescriptiondateauthorscover
Place referenced cover images under public/ and keep the frontmatter path in sync with the asset.
Submitting Changes
- Open a pull request with a clear description of the change.
- Follow the repository's Conventional Commit style.
- Run
npm run buildfor documentation or site changes.
Find a first issue
Reporting Issues
- Library bugs or core features: File an issue in the quanta issue tracker.
- Documentation or site issues: File an issue in the quanta-docs issue tracker.
License
Contributions are licensed under the MIT License.
Spot something that needs improving?
Edit on GitHubEdit page