A Dart-native documentation generator. Beautiful docs, zero config.
Building documentation shouldn't require a JavaScript toolchain. Stardust is a fast, native documentation generator built entirely in Dart — no Node.js, no npm, no webpack. Just beautiful docs.
- Zero Configuration — Sensible defaults out of the box. Start writing immediately.
- Blazing Fast — Native Dart binary. Builds in milliseconds, not minutes.
- Beautiful by Default — Clean, modern design with automatic dark mode.
- Rich Components — Callouts, tabs, code groups, API docs, and 30+ components.
- Full-Text Search — Powered by Pagefind. No external services required.
- SEO Optimized — Automatic sitemap, robots.txt, Open Graph, and Twitter Cards.
- OpenAPI Import — Generate API documentation from your Swagger/OpenAPI specs.
Homebrew (recommended)
brew tap nexlabstudio/tap
brew install stardustcurl
curl -sSL https://raw.githubusercontent.com/nexlabstudio/stardust/dev/install.sh | bashcurl (recommended)
curl -sSL https://raw.githubusercontent.com/nexlabstudio/stardust/dev/install.sh | bashSnap
snap install stardustScoop (recommended)
scoop install https://raw.githubusercontent.com/nexlabstudio/stardust/dev/scoop/stardust.jsonChocolatey
choco install stardustIf you already have Dart installed:
dart pub global activate stardustDownload pre-built binaries from the Releases page.
| Platform | Architecture | Download |
|---|---|---|
| macOS | Apple Silicon | stardust-darwin-arm64.tar.gz |
| macOS | Intel | stardust-darwin-x64.tar.gz |
| Linux | x64 | stardust-linux-x64.tar.gz |
| Linux | ARM64 | stardust-linux-arm64.tar.gz |
| Windows | x64 | stardust-windows-x64.zip |
1. Create a new project
stardust init my-docs
cd my-docs2. Start the dev server
stardust devOpen http://localhost:4000 to see your docs with live reload.
3. Build for production
stardust buildYour static site is ready in dist/. Deploy anywhere.
my-docs/
├── docs/ # Your markdown files
│ ├── index.md # Home page
│ └── guide.md # Additional pages
├── public/ # Static assets (images, etc.)
├── stardust.yaml # Configuration
└── dist/ # Build output (generated)
Write expressive documentation with JSX-style components:
<Info>This is an informational callout.</Info>
<Tabs>
<Tab name="npm">npm install package</Tab>
<Tab name="yarn">yarn add package</Tab>
</Tabs>
<Steps>
<Step title="Install">Run the installer</Step>
<Step title="Configure">Edit the config file</Step>
<Step title="Deploy">Push to production</Step>
</Steps>30+ built-in components: Callouts, Tabs, Accordions, Cards, Steps, Code Groups, API docs, YouTube/Vimeo embeds, Mermaid diagrams, and more.
Document your APIs beautifully:
<Api method="GET" path="/users/{id}">
<ParamField name="id" type="string" required>User ID</ParamField>
<ResponseField name="email" type="string">User's email</ResponseField>
</Api>Or import directly from OpenAPI/Swagger:
stardust openapi openapi.yaml -o docs/apiSearch is built-in and works offline. Powered by Pagefind.
- Press
/orCmd+Kto search - No external services or API keys required
- Works entirely client-side
Automatic dark mode that respects system preferences. Or let users toggle manually.
- Automatic
sitemap.xmlgeneration - Configurable
robots.txt - Open Graph and Twitter Card meta tags
- Clean, semantic HTML output
Create a stardust.yaml in your project root:
name: My Project
description: Documentation for My Project
url: https://docs.myproject.com
nav:
- label: Guide
href: /
- label: API
href: /api
- label: GitHub
href: https://github.com/myorg/myproject
external: true
sidebar:
- group: Getting Started
pages:
- index
- installation
- quickstart
theme:
colors:
primary: "#6366f1"
darkMode:
enabled: true
default: system
search:
enabled: true
placeholder: "Search docs..."
hotkey: "/"| Command | Description |
|---|---|
stardust init [dir] |
Create a new documentation project |
stardust dev |
Start dev server with hot reload |
stardust build |
Build static site for production |
stardust openapi <spec> |
Generate docs from OpenAPI spec |
Stardust generates a static site in dist/. Deploy anywhere static files are served.
Use GitHub Actions to build and deploy automatically:
# .github/workflows/deploy.yml
- run: curl -sSL https://raw.githubusercontent.com/nexlabstudio/stardust/dev/install.sh | bash
- run: stardust build
- uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./distThese platforms don't have Stardust pre-installed. Two options:
Option 1: Build with GitHub Actions, deploy output
Build in CI, then deploy the dist/ folder. Set your platform to serve from the build output.
Option 2: Install during build
# Build command (Vercel/Netlify/Cloudflare)
curl -sSL https://raw.githubusercontent.com/nexlabstudio/stardust/dev/install.sh | bash && stardust build
# Output directory
distJust upload the dist/ folder to any web server, CDN, or object storage (S3, GCS, etc.).
| Feature | Stardust | docs.page | Mintlify | Starlight | Docusaurus | VitePress | GitBook |
|---|---|---|---|---|---|---|---|
| No Node.js required | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Zero config | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
| Self-hosted | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ |
| Free & open source | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | Freemium |
| JSX-style components | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
| Built-in search | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| OpenAPI/Swagger import | ✅ | ❌ | ✅ | Plugin | Plugin | Plugin | ✅ |
| Dark mode | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SEO (sitemap, meta tags) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Edit on GitHub | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
| i18n / Multi-language | 🚧 | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Versioning | 🚧 | ❌ | ✅ | ❌ | ✅ | ❌ | ✅ |
| API documentation | ✅ | ✅ | ✅ | Plugin | Plugin | Plugin | ✅ |
| LLM-friendly output | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Mermaid diagrams | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Dart/Flutter focus | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
✅ = Built-in | 🚧 = Coming soon | Plugin = Requires plugin/addon | ❌ = Not available
Contributions are welcome! Please read our contributing guidelines before submitting a PR.
# Clone the repo
git clone https://github.com/nexlabstudio/stardust.git
cd stardust
# Install dependencies
dart pub get
# Run tests
dart test
# Run locally
dart run bin/stardust.dart --helpApache-2.0 — See LICENSE for details.
Built with Dart. Made for developers who value simplicity.