Forge powerful
NestJS backends.
Native DI, forRoot/forRootAsync, production-ready integrations forged for the NestJS ecosystem.
$ npm install @nestjsforge/echartsimport { Module } from '@nestjs/common';
import { EChartsModule } from '@nestjsforge/echarts';
@Module({
imports: [
EChartsModule.forRoot({
poolSize: 2,
timeout: 15_000,
defaultTheme: 'dark',
}),
],
})
export class AppModule {}2
Packages
MIT
License
100%
TypeScript
Why NestJSForge packages?
Built for NestJS developers
Every package in the NestJSForge ecosystem is designed from the ground up to feel native inside your NestJS application.
Native NestJS DI
Inject EChartsService or PdfmeService directly into any controller, service, or provider. First-class NestJS citizen — no global setup, no manual instantiation.
@Injectable()
export class ReportService {
constructor(
private readonly echarts: EChartsService,
private readonly pdfme: PdfmeService,
) {}
async generateReport(data: ReportData) {
const chart = await this.echarts.renderToBuffer(data.chartOption);
return this.pdfme.generate({
template: reportTemplate,
inputs: [{ chart: chart.toString('base64') }],
});
}
}Our packages
Production-ready NestJS integrations for the tools you already use.
v1.0.2 @nestjsforge/echarts
Render any ECharts config to PNG/Buffer/Base64 from a NestJS service. Browser pool, concurrency control, graceful shutdown.
- Charts
- Puppeteer
- Server-side
- Production-ready
v1.0.2 @nestjsforge/pdfme
Generate and validate PDF templates as injectable NestJS services. forRoot/forRootAsync, typed exceptions, zero boilerplate.
- Templates
- DI
- CJS/ESM
More packages coming soon to the NestJSForge ecosystem
Our philosophy
Why NestJSForge?
We believe great open source libraries should feel like they were built into the framework itself.
Clean Code & Best Practices
Every package follows strict TypeScript, Clean Architecture, and the NestJS style guide. Code you can trust and understand.
Reusable Modules
Designed as true NestJS dynamic modules. Import once, configure globally or per-feature, and reuse across your entire application.
Powerful Integrations
Deep integrations with the tools you already use — not shallow wrappers. Full access to the underlying library through a clean API.
Developer Tools
Helper decorators, testing utilities, typed exceptions, and detailed documentation so you can move fast with confidence.
Performance Focused
Resource pooling, concurrency control, graceful shutdown, and production-tuned defaults. Built to handle real traffic.
Built for the Community
MIT licensed, open to contributions, and driven by real-world NestJS developer needs. Your feedback shapes the roadmap.