Why CrumbJS?
A fair question
You might wonder: “Why build yet another framework when there are already so many great ones?”
After all, the ecosystem is full of excellent options — from modern TypeScript frameworks like Elysia and Hono, to the battle-tested classics like Express and Fastify.
The truth is, we’ve used them all in real projects. And while each shines in its own way, we kept running into the same recurring pain points when building the kind of APIs we deliver every day. CrumbJS was born to solve those gaps directly, instead of patching them together with a dozen extra dependencies.
What sets CrumbJS apart
1. Validation built in
Validation shouldn’t mean 500 decorators or a middleware zoo.
CrumbJS is built around Zod — powerful, expressive, and frontend-friendly.
Schemas are reusable across backend and frontend, with runtime safety baked in.
2. OpenAPI without extra setup
Every medium-to-large API eventually needs proper documentation.
With most frameworks, that means bolting on third-party tools that don’t always evolve in sync.
In CrumbJS, OpenAPI is integrated with your validation schemas, and tries to be automatic-as-possible — your docs never drift away from your code.
3. Enterprise-ready features included
We want enterprise-ready features to be plug-and-play, fully aligned with our principles of rapid API development with serious validation and documentation That’s what we did with the BullMQ and Mongo addons — and more are coming.
4. Pragmatic, not dogmatic
With CrumbJS, the goal is to get your API into production fast.
We focus on auto-configuration and easy setup, so you can write less and do more—
rather than being forced into a specific coding style.
We take the best ideas from modern frameworks when they move things forward,
but we also bring back some classic patterns that still work great.
A example of this: Route definitions in CrumbJS combine validation, inference, and documentation in one place
(similar to Elysia -or Hono with a couple of packages-), while still keeping classic scoped and global middlewares à la Express.
In short: we only adopt what truly helps with the bigger goal—shipping to production faster.
5. A vision for modern javascript
Our mission is for CrumbJS to become the go-to enterprise-ready framework for modern TypeScript applications. We’re not there — but every step we take is moving deliberately in that direction.
✨ In short, CrumbJS isn’t about reinventing the wheel.
It’s about removing friction, bundling the features every API eventually needs, and giving Bun developers a batteries-included framework they can rely on for serious projects.