A modern, feature-rich documentation system for React applications with versioning, multi-language support, and markdown-based content.
- 📚 Markdown-based - Write documentation in Markdown
- 🌍 Multi-language - Support for multiple languages
- 🔄 Versioning - Organize documentation by versions
- 🔍 Full-text search - Search through titles and content
- 🎨 Modern UI - Beautiful, responsive interface built with Radix UI and Tailwind CSS
- ⚡ Fast - Optimized for performance with lazy loading
- 🔗 URL routing - Shareable links to specific pages
- 🎯 Flexible structure - Support for pages, groups, dropdowns, and buttons
npm install dock-rush
# or
pnpm add dock-rush
# or
yarn add dock-rush// vite.config.ts
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import { dockRushScannerPlugin } from 'dock-rush/plugin'
export default defineConfig({
plugins: [
react(),
dockRushScannerPlugin({
route: '/api/dock-rush-scan', // optional, default: '/api/dock-rush-scan'
root: process.cwd(), // optional
}),
],
})import { Documentation } from 'dock-rush'
import 'dock-rush/style.css'
function App() {
return (
<Documentation
title='My Documentation'
folderPath='docs'
useToggleTheme={true}
useToggleLanguage={true}
useSearch={true}
versionSelect={true}
/>
)
}docs/
├── 2.0.2/
│ ├── en/
│ │ ├── intro.md
│ │ └── getting-started/
│ │ └── installation.md
│ └── ru/
│ └── intro.md
└── 1.0.1/
└── api.md
Versions are detected automatically from folder names matching semantic versioning (e.g., 2.0.2, 1.0.1).
Optional language folders (e.g., en, ru) can be used to organize content by language.
- Pages - Regular markdown files (
.md) - Groups - Folders with
(group-*)prefix containing related pages - Dropdowns - Folders that can be expanded/collapsed
- Buttons - Files with
.button.mdsuffix for navigation buttons
Each markdown file can include frontmatter:
---
title: Page Title
order: 1
icon: file-text
hidden: false
searchable: true
tags:
- getting-started
- tutorial
---| Prop | Type | Default | Description |
|---|---|---|---|
title |
string |
'Documentation' |
Title of the documentation |
logo |
ReactNode |
<Boxes /> |
Logo component |
folderPath |
string |
'docs' |
Path to documentation folder |
useToggleTheme |
boolean |
false |
Enable theme toggle |
useToggleLanguage |
boolean |
false |
Enable language toggle |
useSearch |
boolean |
false |
Enable search functionality |
versionSelect |
boolean |
false |
Enable version selector |
logTreeFiles |
object |
{} |
Console logging options |
| Option | Type | Default | Description |
|---|---|---|---|
route |
string |
'/api/dock-rush-scan' |
API route for scanning |
root |
string |
process.cwd() |
Root directory for resolving paths |
import { Documentation } from 'dock-rush'
import 'dock-rush/style.css'
;<Documentation folderPath='docs' /><Documentation
title='My Docs'
folderPath='public/docs'
useToggleTheme={true}
useToggleLanguage={true}
useSearch={true}
versionSelect={true}
logo={<MyLogo />}
/>MIT © da-b1rmuda
Created with ❤️ for Web2Bizz