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

17 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages