Roadmap poll: what should we build next in django-orm-lens? #27
FROWNINGdev
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
tl;dr — django-orm-lens сегодня закрывает три ниши на одном static-analysis парсере: editor sidebar + ER diagram,
nplusone/migration-riskCLI, MCP server for AI agents (Cursor / Aider / Claude Desktop / Zed). Больше нет tool'а, который делает всё это сразу.But we can go further. Below is a shortlist of candidates for v0.8 – v1.0. Comment 👍 / 👎 / notes on each, propose your own, or roast the roadmap — everything is on the table.
Candidate features
🧭 Deep static analysis
.filter()/.values()calls, warn when.only(...)or.defer(...)would eliminate 90% of column IO. Runtime tools likedjango-silkmeasure this after the fact; we could catch it in the editor as you type.suggest_indexesonly readsMeta.indexes+db_index=. Next step: analyse.filter(foo__gt=)/.order_by(...)chains across the repo and recommend composite indexes that would kill sequential scans.select_related/prefetch_relatedautocomplete inside.filter()/.annotate()— the top-voted feature request in #3. Would ship as a VS Code CompletionProvider driven by the same relation graph we already build.🧪 CI / DX
django-orm-lens precommit installwrites a.pre-commit-config.yamlblock that runsnplusone+migration-riskon staged files only. Zero-config.--format sarif— output CLI findings as SARIF so GitHub Code Scanning + GitLab CI + JetBrains Qodana ingest us natively.🎨 Editor UX
related_nametypos — squiggle underBook.objects.filter(authro__name=). Would need light Django-project resolution but stays 100% static.🤖 MCP / AI agents
describe_modelresponses — for models with 40+ fields the current single-shot response is over the token budget. Chunked would let agents keep context clean.explain_migration_planMCP tool — given a set of pending migrations, produce a plain-English explanation the agent can quote back to the human before running.🌐 Framework reach
What we intentionally do NOT plan
django-silk/django-debug-toolbar— they do it well; we stay static)How to vote
React on this post: 👍 = yes, ship; 👎 = meh. Reply with a letter + one line to add nuance: "C. yes but only for
.filter(), not.annotate()".If your favorite thing isn't listed — propose it. Every idea in Ideas with 3+ 👍 gets a labelled issue and lands on the Roadmap.
Also — if you tried the tool and it broke, file a bug or reply here. We shipped 8 patches yesterday alone off a single Reddit post; we can turn one from here around in a day.
All reactions