{"id":48663437,"url":"https://github.com/edujbarrios/ncmds","last_synced_at":"2026-04-10T10:33:18.409Z","repository":{"id":338786533,"uuid":"1159147527","full_name":"edujbarrios/ncmds","owner":"edujbarrios","description":"Create beautiful documentation sites with just Markdown","archived":false,"fork":false,"pushed_at":"2026-04-06T12:57:28.000Z","size":2554,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-06T13:31:16.707Z","etag":null,"topics":["documentation","documentation-tool","markdown","markdown-documentation","python"],"latest_commit_sha":null,"homepage":"https://ncmds.vercel.app/","language":"Markdown","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edujbarrios.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-16T11:27:06.000Z","updated_at":"2026-04-06T12:57:33.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/edujbarrios/ncmds","commit_stats":null,"previous_names":["edujbarrios/ncmds"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/edujbarrios/ncmds","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edujbarrios%2Fncmds","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edujbarrios%2Fncmds/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edujbarrios%2Fncmds/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edujbarrios%2Fncmds/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edujbarrios","download_url":"https://codeload.github.com/edujbarrios/ncmds/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edujbarrios%2Fncmds/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31638525,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["documentation","documentation-tool","markdown","markdown-documentation","python"],"created_at":"2026-04-10T10:33:17.789Z","updated_at":"2026-04-10T10:33:18.396Z","avatar_url":"https://github.com/edujbarrios.png","language":"Markdown","readme":"\u003cdiv align=\"center\"\u003e\n\n# No Code Markdown Documentation Sites\n\n\u003cimg src=\"images/logo.png\" alt=\"NCMDS Logo\" width=\"400\"/\u003e\n\n**Create beautiful documentation sites with just Markdown**\n\n🌐 **[Live Demo](https://ncmds.vercel.app/)** | 📖 [Documentation](https://ncmds.vercel.app/)\n\n![On Active Development](https://img.shields.io/badge/Status-On%20Active%20Development-0D8B8B?style=for-the-badge\u0026logo=github\u0026logoColor=white)\n![Unstable Versions](https://img.shields.io/badge/Versions-Unstable-0D8B8B?style=for-the-badge\u0026logo=exclamation\u0026logoColor=white)\n![AI Integration](https://img.shields.io/badge/AI%20Integration-LLM7.io-0D8B8B?style=for-the-badge\u0026logo=openai\u0026logoColor=white)\n\n\u003c/div\u003e\n\n\u003cimg src=\"images/mainpage_v4.png\" alt=\"Main View\"/\u003e\n\n## Overview\n\nNCMDS is a zero-configuration documentation site builder that converts Markdown files into beautiful, dark-themed documentation websites with automatic navigation, AI-powered assistance, and an optimized reading experience.\n\n**Author:** Eduardo J. Barrios ([edujbarrios](https://github.com/edujbarrios))\n\n## ✨ Key Features\n\n- 🏠 **Local-First** - Runs on localhost by default, no cloud required\n- 🤖 **AI-Powered Chat** - Ask questions about documentation with built-in AI assistant and switchable models\n- 📤 **Export Functionality** - Export documentation to PDF and QMD (Quarto Markdown) formats\n- 🎨 **Dark Theme** - Optimized for comfortable reading and coding\n- 📱 **Responsive Design** - Works seamlessly on desktop and mobile\n- 🔍 **Auto Navigation** - Automatic table of contents and page navigation\n\n## 🚀 Quick Start (Local Development)\n\n\u003e [!CAUTION]\n\u003e **Default Mode:** NCMDS runs locally on your machine. Cloud deployment is completely optional.\n\n```bash\n# Clone repository\ngit clone https://github.com/edujbarrios/ncmds.git\ncd ncmds\n\n# Install dependencies\npip install -r requirements.txt\n\n# Run locally (default)\npython ncmds.py\n```\n\nOpen `http://localhost:5000` in your browser.\n\n**That's it!** The tool is designed to run on localhost by default. No additional configuration needed.\n\n## � Development Mode (Package Installation)\n\nIf you want to use NCMDS as a reusable module in development:\n\n```bash\n# Install in editable mode (one time only)\npip install -e .\n```\n\nThis allows you to:\n- Run `ncmds` command from anywhere\n- Import NCMDS in other Python projects\n- Use changes immediately without reinstalling\n\n```bash\n# Run via CLI command\nncmds\n\n# Or with custom port\nPORT=8000 ncmds\n\n# Or still use the traditional way\npython ncmds.py\n```\n\n### Import in Other Projects\n\n```python\nfrom ncmds import app, DocumentationSite, config_manager\nfrom ai_chat import register_ai_chat_routes\nfrom export import register_export_routes\n```\n\n## �📝 Usage\n\n1. Add `.md` files to the `docs/` folder\n2. Use numeric prefixes for ordering: `01-index.md`, `02-guide.md`\n3. Write in Markdown\n4. Reload browser to see changes\n\n## ⚙️ Configuration\n\nEdit `config/config.yaml`:\n\n```yaml\nsite_name: \"My Documentation\"\nauthor: \"Your Name\"\ndescription: \"Your site description\"\n\nhero:\n  enabled: true\n  project_name: \"My Project\"\n  company: \"Your Company\"\n  tagline: \"Your tagline here\"\n  description: \"Your project description\"\n\n# AI Chat Assistant\nai_chat:\n  enabled: true\n  api_url: \"https://api.llm7.io/v1/chat/completions\"\n  api_key: \"your-api-key\"  # Get your key from LLM7.io\n  model: \"gpt-4o-mini\"  # Default model (switchable in chat UI)\n  provider: \"LLM7.io\"\n```\n\u003cimg src=\"images/image.png\" alt=\"NCMDS AI chat\" width=\"400\"/\u003e\n\n**AI Features:**\n- Model selector dropdown to switch between available models in real-time\n- Context-aware responses based on current documentation page\n- Fullscreen mode for better reading experience\n\n## 📤 Export Documentation\n\nNCMDS includes a powerful export module that allows you to export your documentation to different formats:\n\n- **PDF Export** - Generate professional PDFs with WeasyPrint\n- **QMD Export** - Export to Quarto Markdown format for rendering with Quarto\n- **Customizable Settings** - Configure project name, paper size, and more\n- **Easy to Use** - Click floating export buttons on any documentation page\n\n### Export Options\n\n- Automatic table of contents generation\n- Professional cover page with project branding\n- Optimized for print and digital reading\n\n## 🆕 Cloud Deployment Support\n\n**NEW:** NCMDS now supports publishing your site via **Vercel** with auto-detection!\n\n### Deploy to Vercel (One-Click)\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fedujbarrios%2Fncmds\u0026project-name=my-ncmds-docs\u0026repository-name=my-ncmds-docs)\n\nSee the [Deployment Guide](docs/06-deployment.md) for complete instructions on deploying to production.\n\n## 🔎 Internal Search\n\n**NEW:** Internal Search is now available to quickly find content across your documentation.\n\n\u003cimg src=\"images/search.png\" alt=\"NCMDS Internal Search\" width=\"400\"/\u003e\n\n## 🏷️ Extended Frontmatter Metadata\n\n**NEW:** NCMDS now supports extended YAML frontmatter fields: **tags**, **difficulty**, **owner**, and **writer** (plus alias **writter**).\n\n```yaml\n---\ntitle: \"API Authentication\"\ntags:\n  - api\n  - auth\ndifficulty: \"intermediate\"\nowner: \"backend-team\"\nwriter: \"alice\"\n---\n```\n\nWhat this adds:\n\n- Automatic metadata chips on each documentation page\n- Search filtering by metadata directly in the search bar\n- Better content organization and ownership tracking\n\nSearch filter examples:\n\n- `tag:api authentication`\n- `difficulty:beginner`\n- `owner:docs-team`\n- `writer:alice`\n\n## 📚 Documentation\n\nFull documentation available at `/docs` when running the server, or view:\n\n- [Getting Started](docs/02-getting-started.md)\n- [Configuration Guide](docs/03-configuration.md)\n- [Markdown Features](docs/04-markdown-guide.md)\n- [Theme Creation](docs/05-themes.md)\n- [Deployment Guide](docs/06-deployment.md)\n- [Template Components](docs/07-components.md)\n\n## 🛠️ Tech Stack\n\n- **Flask** - Web framework\n- **Python-Markdown** - Markdown processing with extensions\n- **PyYAML** - Configuration management\n- **Highlight.js** - Syntax highlighting\n- **LLM7.io** - AI chat integration with model switching\n- **Quarto** - QMD rendering support in PDF format (optional)\n\n## 🎯 Use Cases\n\n- Project documentation\n- Technical documentation\n- API documentation\n- Personal wikis\n- Educational materials\n- User guides\n\n\n## 🙏 Acknowledgments\n\nInspired by Docusaurus, MkDocs, Read the Docs, and Quarto.\n\n## 📞 Contact\n\n- **Author:** [edujbarrios](https://github.com/edujbarrios) - eduardojbarriosgarcia@gmail.com\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedujbarrios%2Fncmds","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedujbarrios%2Fncmds","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedujbarrios%2Fncmds/lists"}