The best web frameworks, according to hackers
63 web frameworks were recommended on Hacker News between November 2025 and November 2026. We rank them by how many separate people recommend each one, and 19 earn the Hacker Approved badge.
Top picks
The three most recommended web frameworks with the badge. Each figure is 25 people. RecommendsCriticizes One comment
Works great with LLM agents
Long-loved for convention over configuration, built-in batteries and expressive code that lets small teams and LLM agents build quickly, though older apps can be painful to maintain and upgrade.
Works well with LLM coding
A mature, boring Python web framework with built-in auth, admin and migrations that lets people ship working apps fast, though critics say its magic gets in the way.
Helpful for LLM-assisted coding
Developers recommend Phoenix for fast, low-overhead web apps with real-time features and little client-side JavaScript. Caveats: a steep learning curve and friction during upgrades.
All 63 web frameworks, ranked
Select a column heading to sort. Approval share is recommenders out of everyone who gave an opinion; the tick on each bar marks the 2 to 1 line the badge needs. Months counts the months, out of 13, in which someone recommended it.
| Rank | |||||||
|---|---|---|---|---|---|---|---|
| 1 | Ruby on Rails | 337 | 145 | 70% | 12 | 14 yrs38 owners | Approved |
| 2 | Django | 277 | 97 | 74% | 12 | 15 yrs38 owners | Approved |
| 3 | Next.js | 127 | 256 | 33% | 12 | 3 yrs6 owners | — |
| 4 | Phoenix Framework | 85 | 11 | 89% | 12 | 8 yrs7 owners | Approved |
| 5 | Laravel | 71 | 24 | 75% | 13 | 2 yrs3 owners | Approved |
| 6 | SvelteKit | 67 | 11 | 86% | 13 | 3 yrs5 owners | Approved |
| 7 | Phoenix LiveView | 58 | 10 | 85% | 12 | — | Approved |
| 8 | FastAPI | 49 | 22 | 69% | 12 | — | Approved |
| 9 | Spring Boot | 46 | 41 | 53% | 11 | — | — |
| 10 | ASP.NET | 42 | 10 | 81% | 12 | 7 yrs4 owners | Approved |
| 11 | Spring Framework | 41 | 56 | 42% | 11 | — | — |
| 12 | Quarkus | 30 | 3 | 91% | 10 | — | Approved |
| 13 | Hono | 27 | 1 | 96% | 13 | — | Approved |
| 14 | Blazor | 26 | 23 | 53% | 8 | 5 yrs4 owners | — |
| 15 | TanStack Start | 25 | 7 | 78% | 8 | — | Approved |
| 16 | Axum | 22 | 8 | 73% | 10 | — | Approved |
| 17 | Symfony | 20 | 4 | 83% | 10 | — | Approved |
| Tied 18 | Express.js | 19 | 13 | 59% | 11 | — | — |
| Tied 18 | Flask | 19 | 12 | 61% | 9 | — | — |
| Tied 18 | Marko | 19 | 16 | 54% | 3 | — | — |
| Tied 21 | Nuxt | 18 | 5 | 78% | 9 | — | Approved |
| Tied 21 | PrinceJS | 18 | 4 | 82% | 1 | — | — |
| 23 | Lustre web framework | 17 | 3 | 85% | 9 | — | Approved |
| 24 | Topcoat | 15 | 11 | 58% | 2 | — | — |
| Tied 25 | Streamlit | 13 | 9 | 59% | 7 | — | — |
| Tied 25 | React Router | 13 | 21 | 38% | 5 | — | — |
| Tied 25 | Plain full-stack Python framework | 13 | 14 | 48% | 4 | — | — |
| 28 | Encore | 12 | 3 | 80% | 5 | — | Approved |
| 29 | Micronaut | 11 | 1 | 92% | 4 | — | Approved |
| Tied 30 | Leptos | 10 | 4 | 71% | 8 | — | Approved |
| Tied 30 | Loco Rust web framework | 10 | 1 | 91% | 4 | — | Approved |
| 32 | Hanami | 9 | 3 | 75% | 2 | — | — |
| Tied 33 | Spring AI | 8 | 0 | 100% | 7 | — | — |
| Tied 33 | Elysia | 8 | 3 | 73% | 6 | — | — |
| Tied 33 | Gin web framework for Go | 8 | 4 | 67% | 5 | — | — |
| Tied 33 | Remix web framework | 8 | 12 | 40% | 5 | — | — |
| Tied 33 | django-ninja | 8 | 1 | 89% | 5 | — | — |
| Tied 33 | Typebase | 8 | 2 | 80% | 2 | — | — |
| Tied 33 | rari | 8 | 2 | 80% | 1 | — | — |
| Tied 40 | Actix Web | 7 | 3 | 70% | 7 | — | — |
| Tied 40 | Sinatra | 7 | 0 | 100% | 6 | — | — |
| Tied 40 | Hologram | 7 | 2 | 78% | 6 | — | — |
| Tied 40 | Blazor Server | 7 | 3 | 70% | 5 | — | — |
| Tied 40 | AdonisJS | 7 | 0 | 100% | 5 | — | — |
| Tied 40 | Laravel Livewire | 7 | 2 | 78% | 5 | — | — |
| Tied 40 | vinext | 7 | 10 | 41% | 5 | — | — |
| Tied 40 | R Shiny | 7 | 2 | 78% | 5 | — | — |
| Tied 40 | Django REST Framework | 7 | 3 | 70% | 4 | — | — |
| Tied 40 | RedwoodSDK | 7 | 0 | 100% | 2 | — | — |
| Tied 50 | Mojolicious | 6 | 0 | 100% | 5 | — | — |
| Tied 50 | Vapor Swift web framework | 6 | 4 | 60% | 5 | — | — |
| Tied 50 | Javalin | 6 | 0 | 100% | 5 | — | — |
| Tied 50 | Zope | 6 | 4 | 60% | 4 | — | — |
| Tied 50 | ASP.NET Razor Pages | 6 | 0 | 100% | 4 | — | — |
| Tied 50 | Meteor | 6 | 2 | 75% | 4 | — | — |
| Tied 50 | Electric Clojure | 6 | 0 | 100% | 4 | — | — |
| Tied 50 | Helidon | 6 | 0 | 100% | 3 | — | — |
| Tied 58 | SolidStart | 5 | 1 | 83% | 4 | — | — |
| Tied 58 | Catalyst Perl web framework | 5 | 4 | 56% | 4 | — | — |
| Tied 58 | Fiber web framework for Go | 5 | 5 | 50% | 4 | — | — |
| Tied 58 | Hummingbird | 5 | 1 | 83% | 3 | — | — |
| Tied 58 | ASP.NET MVC | 5 | 5 | 50% | 3 | — | — |
| Tied 58 | Proa | 5 | 3 | 63% | 1 | — | — |
How we rank
Rank is the number of separate people who recommend a product in a Hacker News comment over the past year. Someone who praises the same web framework in five threads counts once.
The badge goes to web frameworks that at least 10 people recommend, with recommenders outnumbering critics at least 2 to 1, recommended in at least 4 of the 13 months.
Rankings are never for sale. We may earn a commission when you buy through our links. It never changes the order.