Node Project Gen โก
Lightning-fast Node.js backend scaffolding CLI built in Rust.
Node Project Gen allows you to generate production-ready, scalable, and secure Node.js backends in seconds. It bridges the gap between simple boilerplate and complex enterprise frameworks by providing opinionated architectural patterns and modern best practices out of the box.
๐ Speed Demo
Acrocoder scaffolds a complete project with authentication, database integration, logging, validation, and Docker support in less than 1 second.
โจ Features
- Blazing Fast: Compiled Rust binary for near-instant execution.
- Multiple Architectures: Clean Architecture, MVC, Modular, Hexagonal, and Microservices.
- Framework Support: Express, Fastify, and NestJS.
- Database Ready: PostgreSQL, MongoDB, MySQL, and SQLite (Prisma, Mongoose, Sequelize, TypeORM).
- Batteries Included Auth: JWT, Sessions, OAuth (Google/GitHub), and Firebase.
- Production Grade:
- ๐ก๏ธ Security: Helmet, HPP, Rate-limiting.
- ๐ Logging: Winston or Pino.
- โ Validation: Zod or Joi.
- ๐งช Testing: Jest or Vitest.
- ๐ณ DevOps: Docker, Docker Compose, and GitHub Actions CI/CD.
- ๐ API Docs: Swagger (OpenAPI 3.0) integration.
๐ฆ Installation
Via Cargo
Via NPM
๐ Usage
Create a New Project
The create command is the main entry point for scaffolding.
# Basic project
# Custom project with specific stack
Options:
--arch:clean,mvc,modular,hexagonal,microservice--framework:express,fastify,nest--db:postgres,mongodb,mysql,sqlite--auth:jwt,session,oauth,firebase--test:jest,vitest--validation:zod,joi--logger:winston,pino--skip-install: Skip automaticnpm install--git: Initialize git repository (default: true)
Generate Modules
Generate new resources or components in an existing project.
# Generate a full CRUD module
# Generate middleware
Add Features
Easily add complex configurations to an existing project.
๐ Architecture Overview
Acrocoder supports multiple patterns. For example, the Clean Architecture layout:
src/
โโโ domain/ # Entities & Business Rules
โโโ application/ # Use Cases & Services
โโโ infrastructure/ # DB, Repositories, External Services
โโโ presentation/ # Controllers, Routes, Validators
โโโ core/ # Shared interfaces & global errors
While the Modular layout organizes by domain:
src/
โโโ modules/
โ โโโ auth/ # Controllers, Services, Routes for Auth
โ โโโ user/ # Controllers, Services, Routes for User
โ โโโ health/ # Health check module
โโโ shared/ # Shared utils & middleware
โโโ core/ # Core configs
๐ Built With
- Clap - Command Line Argument Parser
- Serde - Serialization/Deserialization
- Colored (via ANSI) - ANSI Escape Codes for UI
- Tokio (Logic-only) - Optional Async features
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Generated with โค๏ธ by Acrocoder