Skip to content

Repository files navigation

Docora

Create beautiful docs with Markdown & React components.

docora

npm version npm downloads License

🚀 Quick Start

Local Development

Create a new documentation project in seconds:

# Create a new project
npx create-docora my-docs

# Or create with i18n template for multi-language docs
npx create-docora my-docs -t i18n

# Navigate to your project
cd my-docs

# Start development server
npm run dev

That's it! Your documentation site will be running at http://localhost:3000

Online Development

Start by deploying the Docora template and create your git repository directly from Vercel:

Deploy with Vercel

🎯 What it creates

The CLI scaffolds a complete documentation project with:

  • Beautiful Design — Clean, modern documentation theme built on Next.js 16, React 19 & Tailwind CSS 4
  • 📱 Responsive — Mobile-first responsive design
  • 🌙 Dark Mode — Built-in dark/light mode with next-themes
  • 🌍 Internationalization — Native i18n with locale-prefixed routes, per-locale sidebars and bundled UI strings
  • 🔍 Search — Compile-time command palette (Cmd/Ctrl-K), no hosted index required
  • 📝 Markdown Enhanced — MDX with MDC syntax so components need no imports
  • 🎨 Customizable — Semantic CSS tokens, layout slots and custom MDX components
  • Fast — App Router, Server Components and statically prerendered pages
  • 🔧 TypeScript — Published as source, with full TypeScript support
  • 🤖 AI Assistant — Drop-in chat that answers from your docs, cites sources, and generates code
  • 🔌 Native MCP Server — Built-in Model Context Protocol server for AI tool integration (Cursor, VS Code, Claude, etc.)
  • 📚 Agent Skills Discovery — Publish skills from your docs site via /.well-known/skills/
  • 📄 LLM-Ready — Automatic llms.txt, llms-full.txt and raw Markdown routes
  • 🗺️ SEO Optimized — Sitemap, robots.txt, canonicals and OG image generation out of the box

Learn more in the Docora documentation.

🤖 AI features

Docora ships with a full AI stack to help both your users and contributors:

Assistant

Embed an AI-powered chat in your docs that answers questions, cites sources, and generates code examples. Powered by Vercel AI Gateway — the UI is hidden until a credential is present. Set AI_GATEWAY_API_KEY locally, or rely on Vercel OIDC in production.

MCP Server

Every Docora site exposes an MCP server at /mcp with list-pages and get-page. Add it to Cursor, VS Code, Claude or any MCP client:

https://your-docs-domain.com/mcp

Agent Skills

Drop skills into a skills/ directory and Docora serves them at /.well-known/skills/ following the Agent Skills Discovery RFC. Users install them with a single command:

npx skills add https://your-docs-domain.com

📁 Project Structure

Generated project

my-docs/
├── content/              # Your markdown content
│   ├── index.mdx        # Homepage
│   └── docs/            # Documentation pages
├── app/                 # Next.js App Router
├── public/              # Static assets
├── lib/source.ts        # Content source
├── docs.config.ts       # Site configuration
├── next.config.ts       # Next.js configuration
└── package.json         # Dependencies and scripts

Optional files and folders

Docora is a theme on top of the App Router, so you can use any feature of a classical Next.js project:

my-docs/
├── docs.config.ts       # Site name, header, socials, footer, SEO
├── next.config.ts       # Next.js configuration (wrap with withDocora)
├── app/                 # App Router
│   ├── components/      # Components (add your own)
│   ├── about/page.tsx   # Extra pages (alongside the catch-all)
│   └── api/             # API routes
├── middleware.ts        # Route middleware
└── public/              # Static assets

/content folder structure

Single language structure:

content/
├── index.mdx
├── docs/
│   ├── index.mdx
│   └── 1.getting-started/
│       ├── .navigation.yml
│       ├── 1.introduction.mdx
│       └── 2.installation.mdx
└── guide/
    └── configuration.mdx

A numeric prefix sets sidebar order and is stripped from the URL. 1.introduction.mdx is served at /docs/getting-started/introduction.

Multi-language structure (with i18n):

content/
├── en/
│   ├── index.mdx
│   └── docs/
│       └── 1.getting-started/
│           └── 1.introduction.mdx
└── fr/
    ├── index.mdx
    └── docs/
        └── 1.getting-started/
            └── 1.introduction.mdx

Scaffold this layout with:

npx create-docora my-docs -t i18n

⚡ Built with

Your project comes pre-configured with the best of the Next.js ecosystem:

📖 Documentation

For detailed documentation on customizing your Docora project, visit the GitHub repository.

🛠️ Development

This repository is a monorepo containing the theme, the CLI and the documentation site.

Local Development

# Clone this repository
git clone https://github.com/StaticMania/docora

# Install dependencies
pnpm install

# Run the documentation site
pnpm run dev

Package Structure

This is a monorepo containing:

🤝 Contributing

We welcome contributions. Please read CONTRIBUTING.md and the Code of Conduct before opening a pull request.

📄 License

Published under the MIT license.

About

An Open Source Documentation Framework. Built with React, Next.js, TypeScript, Tailwind CSS and MDX — with routing, search, SEO, i18n and an MCP server built in, so both people and AI tools can read your docs.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

9 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages