Skip to main content

Code Contextualizer — point it at any repo (no upload) and get a narrated architecture walkthrough, a handbook, and hover-to-explain in your editor. Runs locally on your own key.

Project description

oneport-context

Code Contextualizer — NotebookLM for your codebase, that never leaves your machine.

Point it at any repo (however large — no upload) and it builds a hierarchical understanding locally, then turns it into a narrated architecture walkthrough, a narrated MP4 video, a PDF handbook, a chat that knows your code, and hover-to-explain in your editor. Runs on your own model key (Google Gemini free tier) or fully local — your code never leaves the machine.

Try it in 60 seconds (no setup)

pip install oneport-context
oneport-context demo

Opens a narrated, animated walkthrough of a bundled sample repo in your browser — no API key needed.

Use it on your own repo

export GEMINI_API_KEY=            # free key at aistudio.google.com/apikey

oneport-context index ./my-repo    # build the understanding (cached in .context/)
oneport-context show  ./my-repo    # narrated walkthrough in the browser
oneport-context video ./my-repo    # narrated MP4 (>= 8 min)   -> needs [video]
oneport-context pdf   ./my-repo    # PDF handbook, opens in browser -> needs [pdf]
oneport-context chat  ./my-repo    # ask questions in the terminal
oneport-context lsp   ./my-repo    # editor hover-to-explain -> needs [lsp]

Without a key it still works in heuristic mode (structure + docstrings) — free and offline, just less prose.

Commands

Command What it does Extra
demo Zero-config narrated walkthrough of a bundled repo
index ./repo Build the hierarchical understanding (cached)
show ./repo Localhost narrated architecture walkthrough
video ./repo Narrated MP4 (--minutes, --voice) [video]
pdf ./repo Styled PDF handbook, served in the browser [pdf]
chat ./repo Terminal Q&A grounded in your code
lsp ./repo Hover-to-explain Language Server (VS Code / Neovim / JetBrains) [lsp]

Install with the features you want

pip install 'oneport-context[video,pdf,lsp]'
  • [video] — pillow, moviepy (ffmpeg), gTTS voice
  • [pdf] — reportlab
  • [lsp] — pygls

Why CLI, not upload

Big repos don't fit an upload box. The CLI walks the tree locally and builds a file -> module -> repo summary (module summaries are batched, so a large repo costs only a handful of model calls). Everything is cached in .context/; your code never leaves the machine.

Notes

  • video/pdf/chat produce their best output with GEMINI_API_KEY set; heuristic mode works without it.
  • Prefer local/air-gapped? Set ONEPORT_MODE=local and run against Ollama.
  • Have an Anthropic key? Set ANTHROPIC_API_KEY and it takes priority automatically.

License

Apache-2.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

oneport_context-0.1.0.tar.gz (35.0 kB view details)

Uploaded Source

Built Distribution

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

oneport_context-0.1.0-py3-none-any.whl (49.8 kB view details)

Uploaded Python 3

File details

Details for the file oneport_context-0.1.0.tar.gz.

File metadata

  • Download URL: oneport_context-0.1.0.tar.gz
  • Upload date:
  • Size: 35.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for oneport_context-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e4772d10a236da449badefac8044a7cbde44ae10adaba642af336f9bbdeb8305
MD5 0afd87d4e9a241f38704e511e5dda0dc
BLAKE2b-256 1466e89c808953b61295c022cd6fd015bf8c979e30d62b53b3bfd695903ca4f8

See more details on using hashes here.

File details

Details for the file oneport_context-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for oneport_context-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3d737c08de502c82602ad3a247c6bb05a5fdb0bcdee9434bd8140cd6e65d844b
MD5 444be7857813a56e62f4b006740c57e1
BLAKE2b-256 4ed8cf2f71985a7e3cc12f8eecc577e033387b4ca20b9406ec6af49421aaa8dd

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