Skip to main content

Zero-token polyglot codebase knowledge graph generator

Project description

ReadMenator

A token-free, offline, production-grade polyglot codebase knowledge graph generator.

No LLMs. No tokens. No cloud costs. Pure static analysis via AST + regex.

Stop uploading proprietary code to the cloud just to understand it. ReadMenator builds production-grade codebase knowledge graphs 100% offline—with zero LLMs, zero token costs, and absolute data privacy.

Supported Languages (13)

C, C++, Python, Go, Rust, JavaScript, TypeScript, Java, C#, Shell, PHP, Dart, GDScript, Nim, Assembly.

Accelerate developer onboarding without compromising your security. ReadMenator uses pure static analysis to map architectures and trace dependencies locally, giving you a complete codebase knowledge base for free.

Tired of burning LLM tokens to navigate legacy code? ReadMenator generates full Mermaid dependency graphs and answers architectural queries right from your terminal, completely offline and with zero cloud costs.

Installation

pip install .

Or run directly:

python -m readmenator /path/to/project

Usage

Generate knowledge base

python -m readmenator /path/to/project

Creates KNOWLEDGE_BASE.md in the project root with a Mermaid dependency graph and full architecture reference.

Force regeneration

python -m readmenator /path/to/project --rebuild

Query the knowledge base

python -m readmenator /path/to/project query "What classes handle HTTP?"

Explain a symbol

python -m readmenator /path/to/project explain Database

Trace dependency path

python -m readmenator /path/to/project path SymbolA SymbolB

Show summary

python -m readmenator /path/to/project summary

Run tests

python -m readmenator --test

Backward Compatibility

The existing readmenator.py wrapper preserves the original CLI interface:

python readmenator.py /path/to/project
python readmenator.py --test

Architecture

ReadMenator follows a contract-based design with strict separation of concerns:

Contract File Responsibility
Config _config.py Immutable centralized configuration
Models _models.py Symbol, Node, Edge data types
Parsers _parsers.py 13 language parsers + factory (Strategy pattern)
Scanner _scanner.py Secure directory walking and file processing
Mermaid _mermaid.py Mermaid graph rendering
Documentation _documentation.py KNOWLEDGE_BASE.md generation
Query _query.py Interactive query/explain/path engine
Application _app.py Application orchestrator
CLI __main__.py CLI entry point and argument dispatch

Security

  • Symlinks are rejected
  • File size capped at 10 MB
  • Directory depth limited to 20
  • Binary/unreadable files are silently skipped
  • No absolute paths in code; no external network calls
  • All exceptions during parsing are caught

Self-Documentation

This repository is documented using ReadMenator itself. See KNOWLEDGE_BASE.md -- the tool analyzing its own codebase.

License

AGPL-3.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

readmenator-1.0.0.tar.gz (41.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

readmenator-1.0.0-py3-none-any.whl (34.1 kB view details)

Uploaded Python 3

File details

Details for the file readmenator-1.0.0.tar.gz.

File metadata

  • Download URL: readmenator-1.0.0.tar.gz
  • Upload date:
  • Size: 41.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.14

File hashes

Hashes for readmenator-1.0.0.tar.gz
Algorithm Hash digest
SHA256 5417801e293e392270f1b5a0676f4d0b354bac06566c623a10f60ca675c98201
MD5 9b8015a64691ebb23d3495281bc984a2
BLAKE2b-256 4382024ea9126368b539b59ecaa6eb730f9ef621c6ecaf6a80e76d8dd75954f8

See more details on using hashes here.

File details

Details for the file readmenator-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: readmenator-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 34.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.14

File hashes

Hashes for readmenator-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8796fe8d6fdea3964e9185f4adfabc2a5c0093f6bbe93763d58f4b054362fc7d
MD5 92cb5eaf2430607217109791277d7a30
BLAKE2b-256 da5c0e51639e1a82587faac85a476b9c337573bad2ee9424493db0a524b6f59a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page