create-easy-stack 1.0.3 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +64 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,64 @@
1
+ # create-easy-stack 🚀
2
+
3
+ An elegant and powerful CLI tool to scaffold modern full-stack projects instantly. Whether you want a strictly structured NestJS DDD backend, a Feature-Sliced React frontend, or simply need to plug in Redis and RabbitMQ to your project, `create-easy-stack` has you covered.
4
+
5
+ ## Installation & Usage
6
+
7
+ You don't need to install anything globally. Just use `npm create`:
8
+
9
+ ```bash
10
+ # Scaffold a new project interactively
11
+ npm create easy-stack <project-name>
12
+ ```
13
+
14
+ ### List all available templates
15
+ ```bash
16
+ npx create-easy-stack list
17
+ ```
18
+
19
+ ## Available Templates
20
+
21
+ ### Backend 🖥️
22
+ - **`nest-ddd`**: NestJS with Domain-Driven Design (DDD) & CQRS (Clean Architecture). Includes Husky, Oxlint, Vitest, and a solid modular structure.
23
+ - **`node-express`**: Standard Node.js Express backend (TipsJS practice architecture).
24
+
25
+ ### Frontend 🎨
26
+ - **`react-fsd`**: React + Vite + TypeScript (Feature Sliced Design architecture).
27
+ - **`react-monolithic`**: Standard React + Vite + TypeScript.
28
+ - **`vue-fsd`**: Vue + Vite + TypeScript (Feature Sliced Design architecture).
29
+ - **`vue-monolithic`**: Standard Vue + Vite + TypeScript.
30
+
31
+ ## Infrastructure Modules (Pluggable) ⚙️
32
+
33
+ After scaffolding a backend project (like `nest-ddd`), you can effortlessly inject infrastructure modules. The CLI will automatically update your `app.module.ts`, `docker-compose.yml`, `.env`, and `package.json` for you!
34
+
35
+ ```bash
36
+ cd <your-project-name>
37
+ npx create-easy-stack add <infra-name>
38
+ ```
39
+
40
+ **Supported Infra Modules:**
41
+ - **`prisma-postgres`**: PostgreSQL database with Prisma ORM.
42
+ - **`redis`**: Redis cache, distributed lock, rate-limiting, and idempotency setup.
43
+ - **`rabbitmq`**: RabbitMQ message broker and background job queue.
44
+ - **`email`**: SMTP email service (sent through RabbitMQ job queue).
45
+ - **`storage-cloudinary`**: Image storage integration with Cloudinary.
46
+
47
+ *Example: Adding Redis to your new NestJS project:*
48
+ ```bash
49
+ npm create easy-stack my-api nest-ddd
50
+ cd my-api
51
+ npx create-easy-stack add redis
52
+ ```
53
+
54
+ ## Built-in Code Generators (Plop.js)
55
+
56
+ For `nest-ddd` templates, the project comes pre-configured with `plop` to generate boilerplate code rapidly. Inside your generated project, simply run:
57
+
58
+ ```bash
59
+ npm run plop
60
+ ```
61
+ You can automatically generate Modules, Commands (CQRS), and Queries (CQRS) without writing repetitive code!
62
+
63
+ ## License
64
+ MIT License © Thuy Phuoc Thinh
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-easy-stack",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "description": "Personal project generator: NestJS DDD, React/Vue FSD & monolith templates + pluggable infra (Prisma, Redis, RabbitMQ...).",
5
5
  "type": "module",
6
6
  "bin": {