Serverless Done Right: Why Hono Beats Express and Nest for Me
Why this lesser-known Node.js framework deserves your attention.
There are several approaches when running Node.js applications: libraries like Express.js and frameworks like Nest.js. If you're using serverless functions like AWS Lambda, there's even the option to implement handler functions from scratch—sometimes with the help of smaller libraries like Middy for middleware management.
However, there's a catch when working with Lambda functions:
It's highly beneficial to run your backend—comprising multiple Lambda functions—locally during development.
There are a few ways to achieve this: using emulators like LocalStack, wrappers like serverless-http
for Express.js, or writing a custom wrapper—such as an Express.js app that calls your plain Lambda handlers in its routes.
That doesn’t feel very native and sounds a bit hacky, right?
That’s why my favorite lightweight framework for serverless applications is Hono!
Hono sits in the middle of the spectrum—from minimal libraries like Middy to full-blown frameworks like Nest.js. It’s more than a simple routing library like Express.js, yet doesn’t come with the steep learning curve and heavy abstractions of Nest.js.
For example, you can throw an HTTPException
with a status code and message anywhere in your code, and Hono will automatically generate the appropriate HTTP response.
Hono also introduces the concept of an app that is independent of the runtime—whether it's AWS Lambda or containerized Node.js. Your app defines routes, middleware, and logic, and you simply specify the runtime. Hono handles the rest, enabling you to run the exact same backend both in AWS Lambda and locally as a standard Node.js application.
Initially, I was hesitant when someone introduced me to Hono. Back then—two years ago—it was relatively new and hadn’t gained much traction on GitHub.
But that has changed: as of July 2025, Hono has 25,000 stars on GitHub. For comparison, Express.js has 64,000 and Nest.js has 71,000 stars.
Given how much younger Hono is, I believe it has a very promising future.
One question I often hear is:
“Cool new tech—but have you actually used it in production within an enterprise context? Or is your experience just from weekend side projects with zero users?”
I can confidently say that I’ve used Hono in production in an enterprise setting—and I’ve been very impressed. It’s now my go-to framework for backends, both in serverless and containerized Node.js environments.
What’s your favorite framework?