We’re excited to launch HazelJS v0.2.0 in stable.
In just the last month, the community has already shown up big:
- 36 GitHub stars
- 170k+ downloads per month
That momentum matters. It means you’re building, shipping, and asking for the details that make a framework feel predictable when it meets real projects.
What “stable” means here
Stable is our promise that the core developer experience is now consistent and automation-friendly:
- generator outputs are easier to reason about (and script)
- workflows are “sharp edges first, escape hatches included”
- the stack stays modular without turning setup into a scavenger hunt
If you’re coming from beta/alpha, you should feel this immediately when you scaffold and iterate.
AI-native runtime and framework
HazelJS is built for AI applications from the ground up—AI isn’t a plugin you bolt on later, it’s first-class in how you build, compose, and ship.
With the stable v0.2.0 release, the “core” and the “AI” pieces snap together cleanly:
-
@hazeljs/ai— one unified API for LLM providers (streaming, embeddings, function calling) -
@hazeljs/agent— production-ready agent runtime (think → act → persist, tools, memory, and safe execution) -
@hazeljs/rag— end-to-end retrieval pipeline (loaders, vector stores, and knowledge-grounded responses)
So you can build AI features using the same patterns you already trust in HazelJS: modules, dependency injection, controllers, and lifecycle hooks.
The headline upgrade: CLI generation, built for automation
HazelJS v0.2.0 makes scaffolding and generation simple, predictable, and automation-ready.
Here are the new “grab-and-go” workflows we’re most excited about:
Start with a quick app skeleton
hazel g app my-api
cd my-api
npm install
No installs or git init run automatically here—just a clean, repeatable starting point.
Generate anything with setup (any package)
Need a minimal starter file for a package? Now you can:
hazel g setup swagger
# alias: hazel g st swagger
hazel g setup oauth
hazel g setup prisma
This drops a ready-to-edit *.setup.ts file and prints the next step (npm install @hazeljs/<package>).
Discover everything the CLI can generate
hazel g --list
hazel g --list --list-json
Machine-readable output with --json
When you’re generating in CI, you want output you can parse.
Just add --json:
hazel g controller users --json
hazel g setup swagger --json
The CLI prints a single JSON object describing what was created (or would be created in --dry-run mode).
How to try HazelJS v0.2.0
If you want a minimal starting point:
npm install @hazeljs/core @hazeljs/cli
Then scaffold and go:
hazel g app my-app
cd my-app
npm install
npm run dev
For full docs, jump into:
Docs + NPM backlinks (all packages)
-
@hazeljs/agent• npm -
@hazeljs/ai• npm -
@hazeljs/audit• npm -
@hazeljs/auth• npm -
@hazeljs/cache• npm -
@hazeljs/casl• npm -
@hazeljs/cli• npm -
@hazeljs/config• npm -
@hazeljs/core• npm -
@hazeljs/cron• npm -
@hazeljs/data• npm -
@hazeljs/discovery• npm -
@hazeljs/event-emitter• npm -
@hazeljs/feature-toggle• npm -
@hazeljs/flow• npm -
@hazeljs/flow-runtime• npm -
@hazeljs/gateway• npm -
@hazeljs/graphql• npm -
@hazeljs/grpc• npm -
@hazeljs/guardrails• npm -
@hazeljs/i18n• npm -
@hazeljs/inspector• npm -
@hazeljs/kafka• npm -
@hazeljs/mcp• npm -
@hazeljs/memory• npm -
@hazeljs/messaging• npm -
@hazeljs/ml• npm -
@hazeljs/oauth• npm -
@hazeljs/ops-agent• npm -
@hazeljs/payment• npm -
@hazeljs/pdf-to-audio• npm -
@hazeljs/prisma• npm -
@hazeljs/prompts• npm -
@hazeljs/queue• npm -
@hazeljs/rag• npm -
@hazeljs/realtime• npm -
@hazeljs/resilience• npm -
@hazeljs/serverless• npm -
@hazeljs/swagger• npm -
@hazeljs/typeorm• npm -
@hazeljs/websocket• npm -
@hazeljs/worker• npm
Thanks for pushing us to stable
Stable releases don’t happen in a vacuum—they happen because people try the thing, break it, and tell us what to fix.
Thanks for the 36 stars and the 170k+ downloads. We’re ready for the next wave of real-world use, and we’ll keep improving the DX with the same “ship-first” mindset.
— The HazelJS Team
Top comments (0)