Docs
March 25, 2025 · View on GitHub
Docs
This repo contains all of the docs and supporting assets for Hypermode Docs. It includes (or soon will) documentation for the open source projects that Hypermode leads:
- Modus - serverless framework for building functions and APIs, powered by WebAssembly
- Dgraph - distributed, transactional graph database for real-time use cases
- Badger - embeddable key-value store in Go
- Ristretto - embeddable memory-bound cache in Go
Found an issue?
If you notice something in our documentation that is wrong, misleading, or could use additional context, the easiest way to make an impact is to create a GitHub issue. We do our best to triage and address docs issues as soon as possible.
For small changes, such as a misspelled word, go ahead and create a pull request for the fix. No issue required!
Connect
You can ask questions and meet others from the Hypermode community in our Discord.
Contributing
We welcome direct contributions to the docs! Our docs are maintained in markdown files in this repo. All changes are managed through a code-first release flow.
The design and hosting of our docs site is provided by
Mintlify. The vast majority of configuration is in code
in mint.json.
Changes are deployed to production automatically
after pushing to the main branch.
Development Environment Setup
The following components are useful when developing locally:
Mintlify CLI
See live changes as you write and edit.
npm i -g mintlify
Trunk CLI
Format and lint changes for easy merging.
npm i -g @trunkio/launcher
Writing
Mintlify includes a number of components to make it easier to build easy-to-consume documentation.
To spin up a local server, run the following command at the root of the docs repo:
mintlify dev
Style
Consistency is important in any documentation experience. Beyond Markdown’s opinionated structure, we adhere to a consistent style for Hypermode.
We have adopted Google’s Developer Documentation Style Guide as a baseline, with Hypermode-specific terms stored in a vocabulary file.
Vale has been implemented in the repo for easy alignment. Vale is implemented within CI/CD, but also executable locally with through Trunk.
Iconography
When icons are required, select from Font Awesome’s catalog for easy rendering with Mintlify.
Formatting and Linting
Trunk has been implemented for easy formatting and linting across different file types. It is implemented within CI/CD, but also executable locally.
Formatting should run automatically on save. To trigger a manual formatting of the repo, run:
trunk fmt
To run lint checks, run:
trunk check # appending --all runs checks beyond changes on the current branch
Note that Trunk also has a VS Code extension you can install.
However, when installing it please be aware of the trunk.autoInit setting,
which is true (enabled) by default This controls whether to auto-initialize
trunk in non-trunk repositories - meaning any folder you open with VS Code is
configured with a .trunk subfolder, and starts using Trunk. You should
probably set this to false in your VS Code user settings, to not interfere
with other projects you may be working on.