nestcraftx 0.1.0 → 0.1.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.
- package/commands/start.js +11 -0
- package/nestcraftx-0.1.0.tgz +0 -0
- package/package.json +6 -4
- package/readme +58 -18
- package/setup.js +1 -0
- package/utils/userInput.js +2 -1
- package/nestcraft-0.1.0.tgz +0 -0
package/commands/start.js
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
|
+
const { execSync } = require("child_process");
|
|
1
2
|
const path = require("path");
|
|
2
3
|
|
|
4
|
+
// 🔐 Forcer UTF-8 uniquement sur Windows
|
|
5
|
+
if (process.platform === "win32") {
|
|
6
|
+
try {
|
|
7
|
+
execSync("chcp 65001", { stdio: "ignore" }); // Changer l'encodage de la console
|
|
8
|
+
} catch (err) {
|
|
9
|
+
const message = `⚠️ Impossible de forcer UTF-8 dans le terminal Windows: ${err}`;
|
|
10
|
+
console.warn(message);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
3
14
|
module.exports = function () {
|
|
4
15
|
console.log("🚀 Lancement de la génération NestJS...");
|
|
5
16
|
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nestcraftx",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "CLI to generate scalable NestJS projects with Clean Architecture and Clean Code",
|
|
5
5
|
"main": "bin/nestcraft.js",
|
|
6
6
|
"bin": {
|
|
7
|
-
"nestcraftx": "
|
|
7
|
+
"nestcraftx": "bin/nestcraft.js"
|
|
8
8
|
},
|
|
9
9
|
"scripts": {
|
|
10
10
|
"test": "nestcraftx test"
|
|
11
11
|
},
|
|
12
12
|
"repository": {
|
|
13
13
|
"type": "git",
|
|
14
|
-
"url": "https://github.com/august-dev-pro/NestCraftX"
|
|
14
|
+
"url": "git+https://github.com/august-dev-pro/NestCraftX.git"
|
|
15
15
|
},
|
|
16
16
|
"keywords": [
|
|
17
17
|
"nestjs",
|
|
@@ -27,5 +27,7 @@
|
|
|
27
27
|
"engines": {
|
|
28
28
|
"node": ">=14.0.0"
|
|
29
29
|
},
|
|
30
|
-
"dependencies": {
|
|
30
|
+
"dependencies": {
|
|
31
|
+
"readline-sync": "^1.4.10"
|
|
32
|
+
}
|
|
31
33
|
}
|
package/readme
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
## 🛠️
|
|
1
|
+
## 🛠️ NestCraftX — Générateur de projet backend NestJS
|
|
2
2
|
|
|
3
3
|

|
|
4
4
|

|
|
5
5
|
|
|
6
|
-
Bienvenue dans **
|
|
6
|
+
Bienvenue dans **NestCraftX**, un CLI Node.js puissant pour générer automatiquement une structure de projet backend modulaire, professionnelle et maintenable. Il s’appuie sur les meilleures pratiques modernes : **Clean Architecture**, **Domain-Driven Design (DDD)**, **Prisma**, **TypeORM**, **JWT Auth**, **Swagger**, **Docker**, etc.
|
|
7
7
|
|
|
8
8
|
> 🧠 L’objectif ? Ne plus jamais repartir de zéro pour créer une base de projet solide, évolutive et prête pour la production.
|
|
9
9
|
|
|
@@ -11,14 +11,15 @@ Bienvenue dans **NestCraft**, un CLI Node.js puissant pour générer automatique
|
|
|
11
11
|
|
|
12
12
|
## 📑 Sommaire
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
- [✨ Objectif du projet](#-objectif-du-projet)
|
|
15
|
+
- [📦 Prérequis](#-prérequis)
|
|
16
|
+
- [🚀 Installation et utilisation](#-installation-et-utilisation)
|
|
17
|
+
- [🧰 Ce que la commande configure automatiquement](#-ce-que-la-commande-configure-automatiquement)
|
|
18
|
+
- [📁 Exemple d’architecture générée](#-exemple-darchitecture-générée)
|
|
19
|
+
- [📌 À venir](#-à-venir)
|
|
20
|
+
- [❤️ Contribuer](#️-contribuer)
|
|
21
|
+
- [📜 Licence](#-licence)
|
|
22
|
+
|
|
22
23
|
|
|
23
24
|
---
|
|
24
25
|
|
|
@@ -43,16 +44,54 @@ Bienvenue dans **NestCraft**, un CLI Node.js puissant pour générer automatique
|
|
|
43
44
|
- **Git** (optionnel pour init un repo)
|
|
44
45
|
|
|
45
46
|
|
|
46
|
-
|
|
47
|
+
---
|
|
47
48
|
|
|
48
49
|
## 🚀 Installation et utilisation
|
|
49
50
|
|
|
50
|
-
|
|
51
|
+
📦 Installation via npx (recommandé)
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
|
|
55
|
+
npx nestcraftx start
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Utilise la puissance de NestCraftX sans rien installer globalement. Simple, rapide et efficace.
|
|
60
|
+
|
|
61
|
+
🌍 Installation globale (optionnel)
|
|
62
|
+
|
|
63
|
+
Tu peux aussi l’installer une fois pour toutes, si tu comptes l’utiliser souvent :
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
|
|
67
|
+
npm install -g nestcraftx
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Et ensuite, lance la commande où tu veux :
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
|
|
75
|
+
nestcraftx start
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
🧪 Installation locale pour développement
|
|
80
|
+
|
|
81
|
+
Clone le projet puis utilise npm link :
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
|
|
85
|
+
git clone https://github.com/august-dev-pro/NestCraftX.git
|
|
86
|
+
cd NestCraftX
|
|
87
|
+
npm install
|
|
88
|
+
npm link
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Cela te permet d’utiliser nestcraftx en CLI localement pendant que tu développes.
|
|
93
|
+
|
|
51
94
|
|
|
52
|
-
git clone https://github.com/august-dev-pro/nestcraft
|
|
53
|
-
cd nestcraft
|
|
54
|
-
npm install
|
|
55
|
-
node setup.js
|
|
56
95
|
---
|
|
57
96
|
|
|
58
97
|
## 🧰 Ce que la commande configure automatiquement :
|
|
@@ -74,6 +113,7 @@ Bienvenue dans **NestCraft**, un CLI Node.js puissant pour générer automatique
|
|
|
74
113
|
---
|
|
75
114
|
|
|
76
115
|
## 📁 Exemple d’architecture générée
|
|
116
|
+
```bash
|
|
77
117
|
my-app/
|
|
78
118
|
├── src/
|
|
79
119
|
│ ├── auth/
|
|
@@ -148,7 +188,7 @@ Bienvenue dans **NestCraft**, un CLI Node.js puissant pour générer automatique
|
|
|
148
188
|
├── package.json
|
|
149
189
|
└── README.md
|
|
150
190
|
|
|
151
|
-
|
|
191
|
+
```
|
|
152
192
|
---
|
|
153
193
|
|
|
154
194
|
## 📌 À venir
|
|
@@ -157,7 +197,7 @@ Bienvenue dans **NestCraft**, un CLI Node.js puissant pour générer automatique
|
|
|
157
197
|
|
|
158
198
|
npx nestcraft add:auth → Intègre le système d'auth JWT
|
|
159
199
|
|
|
160
|
-
Menu CLI interactif intelligent (choix d'ORM,
|
|
200
|
+
Menu CLI interactif intelligent (choix d'ORM, base de données : MySQL, MongoDB, Firebase, etc.)
|
|
161
201
|
|
|
162
202
|
Génération de tests unitaires
|
|
163
203
|
|
package/setup.js
CHANGED
package/utils/userInput.js
CHANGED
|
@@ -204,7 +204,8 @@ export async function getUserInputs2() {
|
|
|
204
204
|
let usedDB = readline.question(
|
|
205
205
|
`Quelle base de donnée voulez-vous utiliser ? (${dataBases
|
|
206
206
|
.map((db) => db.name)
|
|
207
|
-
.join(", ")}) :
|
|
207
|
+
.join(", ")}) : `,
|
|
208
|
+
{ defaultInput: "postgresql" }
|
|
208
209
|
);
|
|
209
210
|
|
|
210
211
|
let selectedDB = dataBases.find(
|
package/nestcraft-0.1.0.tgz
DELETED
|
Binary file
|