# Codemble v0.2.0 — Phase 1 polyglot tester release

Codemble now maps Python, JavaScript, TypeScript, and mixed projects into one
local parser-proven galaxy. The new language focus lets learners reduce a mixed
sky without changing the graph, coordinates, progress, or uncertainty behind it.

## Highlights

- One language-neutral project parser composes all supported source files and
  resolves Home across languages without changing Python-only graph bytes
- Official tree-sitter JavaScript, TypeScript, and TSX grammars support `.js`,
  `.jsx`, `.mjs`, `.cjs`, `.ts`, `.tsx`, `.mts`, and `.cts`
- Exact structures, spans, imports, calls, entrypoint candidates, and partial
  syntax recovery stay parser-owned; approximate relationships stay labeled
  possible
- JavaScript/TypeScript Lens notes cover parser-proven async/await, arrows,
  destructuring, optional chaining, nullish coalescing, modules, types,
  interfaces, generics, and JSX
- Language-tagged star-chart concepts prevent same-named Python and TypeScript
  evidence from colliding
- Accessible All/Python/JavaScript/TypeScript focus works at desktop and 320 px,
  preserves external/unresolved edges, and never rewrites the stored graph
- Production SPA assets ship in the wheel; install from the `v0.2.0` Git tag
  with `pipx` or `uvx` without Node at runtime

## Known limits

- Source adapters currently cover Python, JavaScript, and TypeScript; unsupported
  languages are not parsed or described
- Projects above 300 supported source files must select a subdirectory
- Dynamic or configuration-dependent JavaScript/TypeScript resolution remains
  explicitly possible rather than being promoted to fact
- Syntax-error files remain visible as unchartable raw source
- Narration requires a bring-your-own Anthropic or OpenAI key; the galaxy,
  source, Lens, checks, and progress work without one
- The original unaided Python learner-acceptance issue remains open; this
  technical release does not fabricate human onboarding evidence
