Klonode was built and tested against one project type (Next.js + Prisma + Three.js + Postgres). This is the tracker for "what does Klonode produce empty or useless CONTEXT.md for today, and how do we close the gap." We need help from people who actually use these stacks day to day.
How to ship a fix (it's small)
The pattern is now well-trodden. Adding a language to the content extractor is one regex block in one file. PR #13 added Python, Java, and Ruby in 104 lines total — read that PR end-to-end and you'll have the template:
Then for whichever language or framework you pick:
- Hand-write a minimal source fixture (one file, 10–30 lines)
- Add a regex block to
extractExports (or extractApiRoutes, detectPatterns, etc. depending on what you're matching)
- Add tests asserting the exports come out the way you expect
pnpm --filter @klonode/core test — must pass
- Open a PR linking the gap issue (
Closes #17 etc.)
That's it. No AST parser dependency, no new packages. Match the style of the file you're editing.
Already shipped (so you can see the velocity)
| Language / framework |
PR |
LOC |
| Python, Java, Ruby extractors |
#13 |
+104 |
| Astro, Deno, Bun detection |
#12 |
– |
| Prisma schema parser |
(in #12 / #13 era) |
– |
Gaps with their own sub-issue (good first contributions, ordered by demand)
Gaps without a dedicated issue yet
These are real gaps but no one has filed a sub-issue. If you want to claim one, comment here first so we don't double up, then open a focused sub-issue.
Languages with extension detection but no extractor
- Swift (
.swift), Dart (.dart), Scala, Clojure, Elixir, Haskell, F#, Crystal, Zig
Schema sources we don't parse
- Drizzle ORM (
schema.ts DSL) — we detect the framework but don't read the definitions
- TypeORM entities, Sequelize models, Mongoose schemas (TS/JS)
- SQLAlchemy models (Python), Django models, Rails ActiveRecord models
- GORM (Go), Diesel (Rust), Ecto (Elixir)
Infrastructure-as-code
- Terraform
.tf, Pulumi
- Kubernetes YAML manifests, Helm charts
- CloudFormation, Ansible playbooks
- Dockerfile content (we detect existence but not the steps)
- Caddyfile, nginx.conf, systemd units
Other config formats
- OpenAPI / Swagger, AsyncAPI, JSON Schema, Protocol Buffers
package.json scripts field (we only use deps today)
Build / tooling configs
- Makefile targets, Justfile
- Gradle (
build.gradle), Maven (pom.xml)
- Rake (
Rakefile)
Mobile / desktop / game
- Unity
.unity / .meta, Unreal .uproject, Godot .tscn
- Shaders (
.glsl, .wgsl, .hlsl)
- Flutter project structure
- Android manifests, iOS
Info.plist
Documentation as structure
- Markdown / MDX — headings as navigation structure
- Jupyter notebooks (
.ipynb) — code cells + markdown cells
Monorepo tooling
- Nx, Lerna, Rush, Bazel / Buck / Pants
Done condition
Close this once Rails, Django, Go backends, Rust CLIs, Flutter apps, and Terraform monorepos all produce useful CONTEXT.md.
Currently most needed: Go (#17), Rust (#18), Django detector (#24). If you use any of those daily and want a small, well-scoped first contribution to an active OSS project, this is the one.
Klonode was built and tested against one project type (Next.js + Prisma + Three.js + Postgres). This is the tracker for "what does Klonode produce empty or useless
CONTEXT.mdfor today, and how do we close the gap." We need help from people who actually use these stacks day to day.How to ship a fix (it's small)
The pattern is now well-trodden. Adding a language to the content extractor is one regex block in one file. PR #13 added Python, Java, and Ruby in 104 lines total — read that PR end-to-end and you'll have the template:
packages/core/src/analyzer/content-extractor.tspackages/core/src/analyzer/content-extractor.test.ts(look for thedescribe('Python')/describe('Java')/describe('Ruby')blocks)Then for whichever language or framework you pick:
extractExports(orextractApiRoutes,detectPatterns, etc. depending on what you're matching)pnpm --filter @klonode/core test— must passCloses #17etc.)That's it. No AST parser dependency, no new packages. Match the style of the file you're editing.
Already shipped (so you can see the velocity)
Gaps with their own sub-issue (good first contributions, ordered by demand)
Gaps without a dedicated issue yet
These are real gaps but no one has filed a sub-issue. If you want to claim one, comment here first so we don't double up, then open a focused sub-issue.
Languages with extension detection but no extractor
.swift), Dart (.dart), Scala, Clojure, Elixir, Haskell, F#, Crystal, ZigSchema sources we don't parse
schema.tsDSL) — we detect the framework but don't read the definitionsInfrastructure-as-code
.tf, PulumiOther config formats
package.jsonscriptsfield (we only use deps today)Build / tooling configs
build.gradle), Maven (pom.xml)Rakefile)Mobile / desktop / game
.unity/.meta, Unreal.uproject, Godot.tscn.glsl,.wgsl,.hlsl)Info.plistDocumentation as structure
.ipynb) — code cells + markdown cellsMonorepo tooling
Done condition
Close this once Rails, Django, Go backends, Rust CLIs, Flutter apps, and Terraform monorepos all produce useful CONTEXT.md.
Currently most needed: Go (#17), Rust (#18), Django detector (#24). If you use any of those daily and want a small, well-scoped first contribution to an active OSS project, this is the one.