A playground markdown-based wiki platform with MCP server integration for seamless documentation access through GitHub Copilot in VS Code.
- π Markdown Wiki: Static site generation using Docusaurus 3.x
- π Smart Search: Full-text search across all documentation
- π·οΈ Organization: Categories and tags for content organization
- π Git-Based Workflow: Edit content by pushing markdown files via git
- π€ MCP Integration: Access wiki articles directly in VS Code through GitHub Copilot
- π³ Docker Ready: One-command deployment with Docker Compose
- Node.js 20 LTS or higher
- pnpm 8.x or higher
- Docker and Docker Compose (for containerized deployment)
-
Clone the repository:
git clone <repository-url> cd ai-docs
-
Install dependencies:
corepack enable corepack prepare pnpm@latest --activate pnpm install -
Start the development server:
pnpm start
The wiki will be available at http://localhost:3000
-
Build and run with Docker Compose:
docker compose up --build
-
Access the wiki:
- Wiki site: http://localhost:3000
- MCP server: Running on configured port
ai-docs/
βββ wiki/ # Docusaurus wiki application
β βββ docs/ # Markdown content (wiki pages)
β βββ src/ # Custom Docusaurus components
β βββ static/ # Static assets (images, files)
β βββ docusaurus.config.ts # Docusaurus configuration
β βββ sidebars.ts # Auto-generated sidebar (do not edit manually)
β βββ generate-sidebars.js # Dynamic sidebar generator
β βββ standardize-metadata.js # Metadata standardization tool
β βββ fix-links.js # Link fixing utility
β βββ package.json # Wiki dependencies
βββ mcp-server/ # MCP server for VS Code integration
β βββ src/ # TypeScript source code
β βββ package.json # MCP server dependencies
βββ indexer/ # Document indexing service
β βββ indexer.py # Main indexer script
β βββ requirements.txt # Python dependencies
βββ embedding-service/ # Text embedding service
β βββ server.py # FastAPI server
β βββ requirements.txt # Python dependencies
βββ docker-compose.yml # Multi-service orchestration
βββ pnpm-workspace.yaml # pnpm workspace configuration
βββ package.json # Root workspace scripts
AI-Docs uses a git-based workflow for all content changes. Simply edit markdown files, commit, and push - the site automatically rebuilds.
-
Clone the repository (first time only):
git clone <repository-url> cd ai-docs
-
Create or edit markdown in
wiki/docs/directory:# Create a new guide touch wiki/docs/guides/my-guide.md # Or edit existing content vim wiki/docs/guides/existing-guide.md
-
Add required frontmatter:
--- title: My New Guide description: A step-by-step guide for beginners category: Guides tags: [tutorial, beginner, example] date: 2025-11-14 --- # My New Guide Your content here...
-
Commit and push your changes:
git add wiki/docs/guides/my-guide.md git commit -m "Add guide for new feature" git push origin main -
Automatic rebuild (Docker deployment only):
- Git post-receive hook detects wiki/docs/ changes
- Docker container automatically restarts
- Sidebar automatically regenerates
- Site regenerates with new content
- Timeline: Complete within 30 seconds
-
Verify your changes:
# Local dev: http://localhost:3000 # Production: your-wiki-domain.com open http://localhost:3000
Enable automatic rebuilds on git push:
# Copy post-receive hook to your git repository
cp scripts/post-receive .git/hooks/post-receive
# Make it executable
chmod +x .git/hooks/post-receiveThe hook triggers on any push that modifies the wiki/docs/ directory.
Categories (top-level sections):
Wiki Docs- Documentation about using this wiki (installation, writing, workflow)Guides- How-to tutorials and step-by-step instructionsReference- API documentation, architecture, configurationExamples- Code samples and templatesBlogs- Technical blog posts and articlesCI/CD- Pipeline, GitOps, and deployment workflowsCloud- Cloud architecture and AWS patternsDocker- Container best practices and optimizationEngineering- Java guidelines, SDLC processesKubernetes- K8s deployment patterns and best practicesObservability- Monitoring, logging, and tracingOnboarding- Engineer onboarding materialsSecurity- Security best practices and guidelinesTech Radar- Technology adoption and recommendations
File Structure:
wiki/docs/
βββ wiki-docs/ # Documentation about this wiki
β βββ intro.md
β βββ installation.md
β βββ quickstart.md
β βββ writing-markdown.md
β βββ git-workflow.md
β βββ frontmatter-guide.md
βββ guides/ # How-to guides
β βββ mcp-setup.md
β βββ docker-deploy.md
βββ reference/ # Technical reference
β βββ architecture.md
β βββ mcp-tools.md
βββ examples/ # Examples
β βββ basic-page.md
β βββ advanced.md
βββ blogs/ # Blog posts
β βββ index.md
β βββ docker-best-practices.md
βββ cicd/ # CI/CD documentation
βββ cloud/ # Cloud architecture
βββ docker/ # Docker guides
βββ engineering/ # Engineering practices
βββ kubernetes/ # Kubernetes guides
βββ observability/ # Observability guides
βββ onboarding/ # Onboarding materials
βββ security/ # Security documentation
βββ tech-radar/ # Tech Radar
Use the provided template for consistent structure:
# Copy template for new page
cp wiki/docs/_templates/page-template.md wiki/docs/guides/my-new-page.md
# Edit with your content
code wiki/docs/guides/my-new-page.mdThe template includes all required frontmatter fields and common content sections.
The wiki includes helpful maintenance scripts:
# Standardize metadata across all files
cd wiki && node standardize-metadata.js
# Fix internal links after reorganization
cd wiki && node fix-links.js
# Check for broken links
cd wiki && node check-broken-links.js- Descriptive titles: Make titles searchable and clear
- One-sentence descriptions: Summarize the page purpose
- 3-5 tags per page: Use common tags consistently
- Update dates: Change date when making significant edits
- Test locally: Run
pnpm startto preview before pushing - Atomic commits: One logical change per commit
- Clear commit messages: Describe what and why
For detailed instructions, see Git Workflow Guide and Frontmatter Guide
See MCP Setup Guide for instructions on connecting the MCP server to VS Code and GitHub Copilot.
- Installation Guide
- Quick Start Guide
- Writing Markdown
- Git Workflow
- Frontmatter Guide
- MCP Setup Guide
- MCP Tools Reference
- Architecture Overview
AI-Docs is a distributed system with multiple services:
-
Docusaurus Wiki (Port 3000)
- React-based static site generator
- Serves human-readable documentation
-
MCP Server (Port 3001)
- Node.js + TypeScript HTTP server
- Provides AI-friendly API for GitHub Copilot
- Query-only mode (stateless)
-
ChromaDB (Port 8000)
- Vector database for semantic search
- Stores 518 chunk embeddings (42 articles)
-
Embedding Service (Port 8001)
- FastAPI + sentence-transformers
- Converts text to 384-dimensional vectors
- Model:
all-MiniLM-L6-v2
-
Python Indexer (One-time job)
- Reads markdown files
- Generates embeddings
- Populates ChromaDB
Indexing (One-time):
Markdown Files β Indexer β Embedding Service β ChromaDB
Querying (Runtime):
GitHub Copilot β MCP Server β Embedding Service β ChromaDB β Results
For detailed architecture diagrams and service interactions, see Architecture Overview.
- Static Site Generator: Docusaurus 3.x
- Runtime: Node.js 20 LTS
- Package Manager: pnpm 8.x
- Language: TypeScript + Python
- MCP Protocol: Model Context Protocol
- Vector Database: ChromaDB
- ML Model: sentence-transformers
- Containerization: Docker with multi-stage builds
- Web Server: NGINX (production)
This project follows the AI-Docs Constitution:
- Quick Start Priority: Get running in < 5 minutes with Docker
- Simple Documentation: Example-driven with working demos
- Minimal Dependencies: Each dependency provides significant value
- Create a new branch for your feature
- Add or edit markdown files in
docs/ - Test locally with
pnpm start - Commit and push your changes
- The site will regenerate automatically
MIT