Seeking Feedback: A Roadmap for Gradual Native Typing & Strengthening django-stubs (GSoC 2026 Draft)

I’ve been contributing to django-stubs recently (with Three merged PRs and more in progress) and I’m currently preparing my proposal for GSoC 2026. Before finalizing the formal document, I’d love to share my “Draft Ideas” and get your thoughts on whether this direction aligns with the community’s long-term vision.

Based on my research into DEP-14, the 2020 Technical Board statement, and recent discussions, I’m proposing a “Gradual Native Typing” roadmap. Here are the core ideas I’m exploring, backed by community insights:

1. The ‘Ratchet’ CI Strategy Implementing a hybrid Mypy/Pyright CI setup to enforce type-checking only on modified or new files. This prevents adding “untyped” debt without the impossible task of fixing the entire legacy codebase at once.

2. Core Object Typing & Global Settings Prioritizing native types for “low-hanging fruit” like HttpRequest, HttpResponse, and global_settings.py (using dj-typed-settings as a technical reference).

3. ORM Protocols & Structural Typing Implementing conceptual contracts like Resolvable and Compilable to make the ORM expression pipeline understandable for type checkers without breaking its dynamic nature.

4. The Hover Fix & IDE Discoverability Adding concise one-liner docstrings to .pyi stubs to solve “discoverability” issues where IDEs fail to show helpful information on hover.

5. Historical Alignment I’ve also studied the 2020 Technical Board Statement to ensure this roadmap respects the cautious and gradual approach established by the project’s leadership.


Why am I sharing this now? I want to ensure these tasks solve real pain points for Django developers and are achievable within a GSoC timeline.

  • Does this roadmap feel like a “single, concrete project” (as per GSoC guidelines)?
  • Are there other high-priority areas in django-stubs I should consider?

I’m currently refining these ideas with my mentor, Thibaut Decombe, but I’d value any feedback from the wider developer community.

Looking forward to your thoughts!