Wheels 4.0 is coming — and it changes how the framework-comparison table looks.
Published the 4.0 parity doc against Rails 8, Laravel 12, and Django 5:
<
https://github.com/wheels-dev/wheels/blob/develop/docs/wheels-vs-frameworks.md%7Cwheels-vs-frameworks.md>
Highlights where the gap closed:
• Bulk insert/upsert (was: no → now: per-adapter native UPSERT)
• Polymorphic associations, advisory locks, pessimistic locking
• First-class middleware pipeline + rate limiting + security headers
• Browser testing (Playwright Java), parallel runner, HTTP test client
• Multi-tenancy in-core (was: external package)
Honest "where we still trail": ecosystem size, bidirectional WebSocket (intentional non-goal — SSE is our cross-engine primitive), asset-pipeline maturity (Vite integration is newer than Rails'/Laravel's).
Worth skimming if you've been waiting for "is Wheels ready for $my-project" clarity.