A modern documentation marketplace for web frameworks with AI-first MCP integration
Discover, explore, and share framework documentation in a beautiful marketplace. No more table_of_contents.json
- just push your docs to GitHub and let Auto-Discovery handle the rest!
- π Framework Marketplace - Beautiful gallery of framework documentations
- π Auto-Discovery - Automatically finds and categorizes
.md
and.schema.json
files - π€ MCP Server - Claude Code integration for AI assistance
- π GitHub Native - Direct loading from GitHub repositories
- π¨ Modern UI - Stunning pill-style navigation with smooth animations
- π Private Repo Support - Per-repository token authentication
- π Smart Categorization - Folder structure becomes navigation
npm install
npm start
Visit http://localhost:3000 to see the marketplace!
The system uses Auto-Discovery to automatically find and organize your documentation:
your-repo/
βββ docs/
β βββ getting-started/ β "Getting Started" section
β β βββ introduction.md
β β βββ installation.md
β βββ components/ β "Components" section
β β βββ button.schema.json
β β βββ card.schema.json
β βββ api/ β "API" section
β β βββ methods.md
β βββ aloha.json β Optional metadata
Add an aloha.json
file for custom metadata and ordering:
{
"title": "My Amazing Framework",
"description": "The best framework ever",
"logo": "assets/logo.png",
"categories": {
"getting-started": {
"title": "π Quick Start",
"order": 1
},
"components": {
"title": "π§© Components",
"order": 2
}
}
}
- Click "+ Add Framework" button
- Enter your GitHub repository URL
- (Optional) Add GitHub token for private repos
- Click Auto-Discover to validate
- Submit!
- Markdown Files (
.md
) β Documentation pages - Schema Files (
.schema.json
) β Component definitions - Folder Names β Navigation categories
- File Names β Page titles (prettified)
{
"mcpServers": {
"aloha": {
"command": "node",
"args": ["server/index.js"],
"cwd": "/path/to/aloha-framework"
}
}
}
/
β Access all frameworks/framework-id
β Specific framework/framework-id/child
β Sub-framework
RAG search works hierarchically - searching downward in the tree only.
aloha-framework/
βββ server/
β βββ modules/
β βββ auto-discovery.js # Smart doc detection
β βββ github-loader.js # GitHub API client
β βββ repository-manager.js # Framework management
β βββ mcp-router.js # Hierarchical routing
βββ public/
β βββ index.html # Marketplace
β βββ framework.html # Doc viewer
β βββ css/
β βββ navbar-pill.css # Beautiful navigation
βββ config/
βββ repositories.json # Stored frameworks
For components, use the standard JSON Schema format:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Button Component",
"description": "A versatile button component",
"tagName": "x-button",
"properties": {
"variant": {
"type": "string",
"enum": ["primary", "secondary"],
"description": "Button style variant"
}
},
"events": [
{
"name": "click",
"description": "Fired on click"
}
],
"examples": [
{
"title": "Basic Button",
"code": "<x-button>Click me</x-button>"
}
]
}
- Use descriptive folder names (they become categories)
- Keep related docs in the same folder
- Add
aloha.json
for custom branding - Include examples in your schemas
- Use meaningful file names
- Don't use
table_of_contents.json
(deprecated) - Don't nest folders too deep (max 3 levels)
- Don't mix docs with source code
- Don't forget descriptions in schemas
Endpoint | Description |
---|---|
GET / |
Marketplace homepage |
GET /api/repositories |
List all frameworks |
POST /api/repos |
Add new framework |
POST /api/discover |
Auto-discover docs |
GET /api/repos/:id |
Framework details |
GET /:framework-id |
View framework docs |
Frameworks are stored in config/repositories.json
:
{
"repositories": [
{
"id": "my-framework",
"name": "My Framework",
"url": "https://github.com/user/repo/tree/main/docs",
"encryptedToken": "...", // For private repos
"enabled": true
}
]
}
# Optional - for higher GitHub API rate limits
GITHUB_TOKEN=ghp_your_token_here
# Server port
PORT=3000
FROM node:18
WORKDIR /app
COPY . .
RUN npm install
EXPOSE 3000
CMD ["npm", "start"]
Deploy the public
folder as static site and server
as serverless functions.
We love contributions! Feel free to:
- Add your framework to the marketplace
- Improve the UI/UX
- Add new features
- Report bugs
MIT - Use freely in your projects!
Built with π by the Aloha team for the developer community