Now supporting 13 languages including legacy stacks

Generate Documentation for
Any Codebase

Point BadDocs at a GitHub repo. It detects each file's language, extracts structure, uses an LLM to write clear docs, and makes everything fully searchable — accurate documentation in seconds.

baddocs analyze --repo github.com/legacy-app
$ baddocs analyze --repo github.com/legacy-app/mainframe-utils

🔍 Detecting languages... ├── COBOL (142 files) ├── Fortran (38 files) ├── Python (56 files) └── C# (21 files)
🤖 Analyzing with LLM... [local llama.cpp]
Documentation generated! 257 files indexed · 18,420 lines documented
📄 Output: ./docs/ (Markdown + HTML)
🔎 Search ready: http://localhost:3000
Features

Built for Real Codebases

BadDocs handles the messy, undocumented, legacy code that other tools ignore — with speed and precision.

AI-Powered Analysis

Deep structural analysis of every file. The LLM understands control flow, dependencies, and intent — producing clean, human-readable documentation that actually makes sense.

Built-in Full-Text Search

Every doc is fully indexed. Search across your entire documentation — function names, parameters, comments, everything. Instant results, no external search engine needed.

Export to Markdown & HTML

Export your docs in clean Markdown or styled HTML. Integrate with existing wikis, static site generators, or host them standalone. Your docs, your way.

Local-First LLM Support

Runs entirely on your machine with llama.cpp or Ollama. No API keys needed. Your code never leaves your environment. Cloud fallback available when you want it.

Incremental Re-Analysis

Only changed files are re-analyzed on subsequent runs. Smart caching means lightning-fast updates. Perfect for CI/CD pipelines and active development.

GitHub App Auth

Secure access to private repositories via GitHub App authentication. No personal access tokens to manage. Enterprise-grade permissions with fine-grained control.

Language Support

13 Language Processors, Legacy Included

BadDocs shines where other tools fail — bringing modern documentation to COBOL, Fortran, VB6, PowerBuilder, and R, alongside all modern languages.

Legacy Stack Support

COBOL Fortran VB6 PowerBuilder R

Modern Languages

Python JavaScript TypeScript Java C# Go Rust