Skip to main content

Codemble — an open lapis ensō whose amber star systems light up

Codemble

Explore the code AI left behind.

Codemble reads a project on your machine and turns its real structure into a galaxy you can explore or a diagram you can follow. Study any file, see what a change reaches, follow one feature from Home to its application surface, and light only what you prove you understand.

Stable release v0.21.1 CI status Python 3.11 or newer Maps nine languages Apache 2.0 license

Start here · See the loop · Trust boundary · Website · Docs

Codemble v0.21.1 showing 215 represented systems across nine languages, with a seeded spiral starfield, community-tinted route corridors, ranked labels, 37 systems charted, eight unreadable test fixtures called out, Home resolved to codemble.cli and still unlit.

Codemble v0.21.1 · choose free exploration or a guided First Flight · land on a world for Easy or Expert evidence · visiting charts a route; passing checks lights a system amber

[!IMPORTANT] The screen above and the packaged app are both v0.21.1. The PyPI release maps Python, JavaScript, TypeScript, Go, Java, Rust, C#, Ruby, PHP, and mixed projects. At launch, choose free exploration or a guided First Flight; land on any parser-owned world to switch between Easy and Expert evidence, inspect its inbound and outbound connections, then read source or prove understanding. The pinned command and direct downloads below resolve to the same verified release.

Start here

Run v0.21.1 — recommended

Install uv once, then open Codemble whenever you need it:

Step Command
Install uv — a clean Python app runner brew install uv
Open this release — pick a project in the browser uvx --from codemble==0.21.1 codemble

No Homebrew? Use uv's official installer, or install permanently with pipx install codemble==0.21.1 and run codemble. Pass a folder to skip the project picker: uvx --from codemble==0.21.1 codemble ./my-project. Use the shorter uvx codemble when you intentionally want whatever release is newest on PyPI.

Download Codemble — wheel, source archive, SHA256 digests, and release notes

Wheel · Source archive · SHA256SUMS · PyPI files · Release notes

Build the same v0.21.1 app from source

Use this route when you want an editable checkout:

git clone --branch v0.21.1 --depth 1 https://github.com/udhawan97/Codemble.git
cd Codemble
python -m venv .venv
source .venv/bin/activate       # Windows: .venv\Scripts\activate
pip install -e .
codemble

Read the full build guide for the verification commands.

What Codemble does

Plain-English answer
Choose your launch. Explore freely from the whole galaxy, or take a guided First Flight from Home. At any stop, land on a parser-owned structure and continue into graph-derived checks.
See how it fits together. Switch between a 3D galaxy, an import architecture map, and the call workflow from Home.
Land, learn, continue. Select a world for an Easy explanation or exact Expert evidence, see what calls it and what it calls, then jump along a real connection.
Know what a change touches. Impact traces what depends on a structure and what it depends on, with real file locations and certainty labels.
Prove what you understand. Graph-derived checks—not a narrator—are the only way to light a system amber.
Keep the project local. Parsing, maps, source, Impact, checks, and progress stay on your machine.
Read mixed projects. Python, JavaScript, TypeScript, Go, Java, Rust, C#, Ruby, and PHP share one graph and one honesty contract.

Codemble reads supported source. It does not run your app, package scripts, compilers, or tests.

See the learning loop

01 · Explore 02 · Map
Current Codemble galaxy with a seeded spiral starfield, visible named modules, and selective import routes. Current Codemble canvas Architecture map with Home, connected modules, and complete bottom rows for modules without a proven import route.
Choose free exploration or First Flight; guided stops can land directly into Study and checks. Follow real imports from Home; unreachable modules are counted, not erased.
03 · Inspect 04 · Prove
Current Codemble landing panel with the selected world, Easy or Expert explanation control, and parser-owned connections. Current Codemble Home system after its graph-derived checks were passed, with all four parser-proven structures glowing amber.
Land on a structure, change its explanation register in place, and follow its real connections. Pass checks drawn from the graph; only then does the system turn amber.

One graph, two useful views

View What it shows When it helps
Galaxy Modules as systems and structures as worlds Learn the shape of the whole project
Map · Architecture Modules grouped by folder and layered by proven imports from Home See how parts fit together
Map · Workflow Certain calls from the selected entrypoint, depth by depth See what runs first
Star chart Project overview, proven import cycles, progress, and a local Markdown export Carry parser-owned facts into a handoff
Study One feature journey, real source, integrated Impact and Connections, Lens notes, and optional narration Understand how one structure reaches the application

The default all-language Map is a complete viewport-rendered canvas; an explicit language focus keeps every item in that named projection. Both remain usable on a machine that cannot render the WebGL galaxy without creating one DOM element per module. Easy mode shows an overview and guides one cited journey step at a time. Expert mode keeps that exact step selected and adds its parser rule and observation evidence. Impact, Connections, and bounded test candidates describe the selected feature as a whole, not the current route step. Neither mode changes the underlying evidence, route certainty, or scoring.

What Codemble can prove

Codemble is built for readers who may not yet spot a confident mistake, so its limits are part of the interface:

  • Nodes, routes, language concepts, Home candidates, and application/test roles come from parsers with exact source evidence.
  • Unproven relationships are labelled possible and drawn differently on both the galaxy and the map. A feature journey stops at the proof break before showing a target-relevant possible frontier; colour never upgrades certainty.
  • Impact and check answers come from the graph and need no API key.
  • Unsupported or broken source is counted and named instead of silently hidden.
  • Charting records where you went. Only a passed check records understanding.
  • Changing a file re-dims only that file's proof; the rest of your progress stays.

Read the correctness contract. A wrong node, edge, citation, Lens note, or check answer is a highest-severity bug—report it.

Local-first, with an explicit AI boundary

Stays on your machine Leaves only when Study opens with a configured narrator
Project discovery and parsing A bounded Study excerpt sent to your configured narrator
Graph, maps, feature journeys, source, structural summary, Impact, Lens, and checks A request triggered when you open Study
Progress and narration cache in ~/.codemble/ No background requests
Narration too, when you choose local Ollama No accounts, telemetry, or Codemble cloud

No model? Everything except optional prose narration remains available. To add cloud narration, set ANTHROPIC_API_KEY or OPENAI_API_KEY. To keep narration local as well:

ollama pull gemma4:12b
export CODEMBLE_PROVIDER=ollama
export CODEMBLE_OLLAMA_MODEL=gemma4:12b
Project and rendering limits
  • Supported languages: .py, .js, .jsx, .mjs, .cjs, .ts, .tsx, .mts, .cts, .go, .java, .rs, .cs, .rb, and .php.
  • Scale: above roughly 5,000 supported files, choose a subdirectory in the picker or pass --path ./project/src.
  • Ambiguous Home: choose a parser-ranked candidate in the app or pass --entrypoint NODE_ID.
  • Broken source: safe partial evidence stays visible; Codemble never invents the missing structure.
  • Rendering: the galaxy needs WebGL; the flat Map does not.
Develop and verify
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest && ruff check .

(cd web && npm install && npm run check)
(cd docs-site && npm install && npm run check && npm run build)

The architecture, parser evidence and scale record, contributing guide, design system, and agent operating guide keep the load-bearing decisions explicit.

Help test the loop

The most useful contribution is a ten-minute first run on a real AI-built project:

  1. Follow the privacy-safe tester guide.
  2. Light one system without maintainer help.
  3. Report the first confusing moment in your own words—never paste private code, project names, credentials, or API keys.

🧭 Open an early-tester report

Roadmap

Horizon Work
Now Collect unaided learner evidence and correctness reports on v0.21.1
Next Design the privacy boundary for the planned read-only galaxy link
Later Read-only sharing, new quest types, and a coordinated public launch

Milestones move only when their acceptance evidence exists. See the public roadmap.

License and acknowledgements

Codemble is released under the Apache License 2.0. It is built with tree-sitter, FastAPI, React, and 3d-force-graph. The flat-map approach draws inspiration from dagre, Eclipse ELK, and archify; the community constellations were inspired by Graphify. The parser evidence and scale record credits the exact pinned open-source revisions behind the current cache and benchmark design; Codemble copied no source or assets from them.


Built for the moment after “AI made it work” and before “I know how it works.”

Download files

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

Source Distribution

codemble-0.21.1.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

codemble-0.21.1-py3-none-any.whl (933.8 kB view details)

Uploaded Python 3

File details

Details for the file codemble-0.21.1.tar.gz.

File metadata

  • Download URL: codemble-0.21.1.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for codemble-0.21.1.tar.gz
Algorithm Hash digest
SHA256 588c910f180418e12e93f2999f8803af1714069084ee001d16494629cf2613c0
MD5 79b4fba542dfd0686d725ddd00b69931
BLAKE2b-256 df53614273ec6eeaff8fa657cd8bfe4a76d5f5a5b1f7766d8c14183e25d5a3f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for codemble-0.21.1.tar.gz:

Publisher: publish-pypi.yml on udhawan97/Codemble

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codemble-0.21.1-py3-none-any.whl.

File metadata

  • Download URL: codemble-0.21.1-py3-none-any.whl
  • Upload date:
  • Size: 933.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for codemble-0.21.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ba515552a14a7a24eaa7846b19ed3278b06e16eada16f1961cf9c7e42eb90212
MD5 1c5c74c9b28bb9c5b8c9a6b6be9c8c3b
BLAKE2b-256 5397b6b3d13c0051ce784edd3c89cff588d1847c37b594a5bb1adaf87e8f2a19

See more details on using hashes here.

Provenance

The following attestation bundles were made for codemble-0.21.1-py3-none-any.whl:

Publisher: publish-pypi.yml on udhawan97/Codemble

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.22.0

2 files

This release

0.21.1 This release

2 files

0.20.0

2 files

0.19.2

2 files

0.19.1

2 files

0.19.0

2 files

0.18.0

2 files

0.17.0

2 files

0.16.0

2 files

0.15.0

2 files

0.14.1

2 files

0.14.0

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.4

2 files

0.6.3

2 files

0.6.2

2 files

0.6.1

2 files

0.6.0

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.0

2 files

0.3.1

2 files

0.3.0

2 files

Supported by

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