title: "Installation · Nael Framework" description: "Install Nael Framework from the monorepo or by selectively adding @nl-framework packages to your Bun workspace."
Install Nael Framework
Clone the entire repo for every example or install only the packages you need. Each module lives under the
@nl-framework scope and is published as native ES modules for Bun runtimes.
git clone git@github.com:Nael-Studio/nael-platform.gitcd nael-platformbun install- Installs every workspace (packages + examples) in a single Bun install.
- Run
bun run buildto emit distributable artifacts before publishing. Use
bun run --cwd examples/basic-http start(swap folder names) to explore each scenario.
bun add @nl-framework/core @nl-framework/platform @nl-framework/http @nl-framework/graphql @nl-framework/configLayer in @nl-framework/auth, @nl-framework/logger, or @nl-framework/orm as your
service footprint grows. Every package exposes familiar forRoot() and forFeature() helpers
just like NestJS.
Microservices & schedulers
Add the async modules when you need Dapr-backed pub/sub or Bun Worker cron jobs.
bun add @nl-framework/microservices @nl-framework/schedulerInstall the Dapr CLI and run
dapr initbefore startingexamples/microservices.- Use
@Cron,@Interval, and@Timeoutdecorators from the scheduler module.
Link packages from the CLI
Working on the framework and a consuming app simultaneously? Link the local packages and the nl CLI will
pick them up automatically.
bun link ../nl-framework-v1/packages/coreRepeat for @nl-framework/http, @nl-framework/graphql, and any other packages you iterate on.
Verify your environment
- Use Bun 1.1+ for best compatibility with the workspace scripts.
- Enable
corepack enableif you plan to experiment with pnpm-based linking. - Set
BETTER_AUTH_SECRETand database URLs inside.envor the YAML config files.
Ready to build something new? Jump back to the Getting Started guide
or run nl new awesome-service to scaffold a fresh project.