create-authenik8-app 2.0.5 → 2.0.6

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/README.md CHANGED
@@ -13,6 +13,7 @@
13
13
  <p align="center">
14
14
  <img src="./assets/giffy-ezgif.com-video-to-gif-converter.gif" width="600" />
15
15
  </p>
16
+
16
17
  ---
17
18
 
18
19
  ## Usage
package/dist/bin/index.js CHANGED
@@ -66,11 +66,11 @@ function generateHashModule(hashLib) {
66
66
  import argon2 from "argon2";
67
67
 
68
68
  export const hashPassword = (password: string) => {
69
- return argon2.hash(password);
69
+ return argon2.hash(password);
70
70
  };
71
71
 
72
72
  export const comparePassword = (password: string, hash: string) => {
73
- return argon2.verify(hash, password);
73
+ return argon2.verify(hash, password);
74
74
  };
75
75
  `;
76
76
  }
@@ -78,11 +78,11 @@ export const comparePassword = (password: string, hash: string) => {
78
78
  import bcrypt from "bcryptjs";
79
79
 
80
80
  export const hashPassword = (password: string) => {
81
- return bcrypt.hash(password, 10);
81
+ return bcrypt.hash(password, 10);
82
82
  };
83
83
 
84
84
  export const comparePassword = (password: string, hash: string) => {
85
- return bcrypt.compare(password, hash);
85
+ return bcrypt.compare(password, hash);
86
86
  };
87
87
  `;
88
88
  }
@@ -102,7 +102,7 @@ if (isResume) {
102
102
  if (exists && !isResume) {
103
103
  const { action } = await inquirer.prompt([
104
104
  {
105
- type: "list",
105
+ type: "select",
106
106
  name: "action",
107
107
  message: `Folder "${projectName}" already exists. What do you want to do?`,
108
108
  choices: [
@@ -125,66 +125,67 @@ if (exists && !isResume) {
125
125
  const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
126
126
  const cleanLogo = `
127
127
 
128
- █████╗ █████╗
128
+ █████╗ █████╗
129
129
  ██╔══██╗ ██╔══██╗
130
130
  ███████║ ╚█████╔╝
131
131
  ██╔══██║ ██╔══██╗
132
132
  ██║ ██║ ╚█████╔╝
133
133
  ╚═╝ ╚═╝ ╚════╝
134
134
 
135
- A8
135
+ A8
136
+
136
137
  Authenik8 CLI
137
- Build Faster
138
- More , Secure
138
+ Build Faster
139
+ More , Secure
139
140
  `;
140
141
  const glitchFrames = [
141
- `
142
- █████╗ █████╗
143
- ██╔══██╗ ██▒▒▒▒██
144
- ███████║ ╚█████╔╝
145
- ██╔══██║ ██▒▒▒▒██
146
- ██║ ██║ ╚█████╔╝
147
- ╚═╝ ╚═╝ ╚════╝
142
+ `
143
+ █████╗ █████╗
144
+ ██╔══██╗ ██▒▒▒▒██
145
+ ███████║ ╚█████╔╝
146
+ ██╔══██║ ██▒▒▒▒██
147
+ ██║ ██║ ╚█████╔╝
148
+ ╚═╝ ╚═╝ ╚════╝
148
149
 
149
- A8
150
- Authenik8 CLI
150
+ A8
151
+ Authenik8 CLI
151
152
 
152
- More
153
+ More
153
154
  `,
154
155
  `
155
- ██▓▓██╗ ██▓▓██╗
156
- ██▒▒██╔╝ ██▒▒██╔╝
157
- ██▒▒▒▒██ ╚█████╔╝
158
- ██▓▓██╔╝ ██▒▒██╗
159
- ██▒▒██║ ╚█████╔╝
160
- ╚═════╝ ╚════╝
161
-
162
- A8
163
- Authenik8 CLI
164
- Faster
156
+ ██▓▓██╗ ██▓▓██╗
157
+ ██▒▒██╔╝ ██▒▒██╔╝
158
+ ██▒▒▒▒██ ╚█████╔╝
159
+ ██▓▓██╔╝ ██▒▒██╗
160
+ ██▒▒██║ ╚█████╔╝
161
+ ╚═════╝ ╚════╝
162
+
163
+ A8
164
+ Authenik8 CLI
165
+ Faster
165
166
  `,
166
167
  `
167
- ██▒▒██╗ ██▒▒██╗
168
- ██▓▓██╔╝ ██▓▓██╔╝
169
- ██▒▒▒▒██ ╚█████╔╝
170
- ██▓▓██╔╝ ██▓▓██╗
171
- ██▒▒██║ ╚█████╔╝
172
- ╚═════╝ ╚════╝
173
-
174
- A8
175
- Authenik8 CLI
176
- Build
168
+ ██▒▒██╗ ██▒▒██╗
169
+ ██▓▓██╔╝ ██▓▓██╔╝
170
+ ██▒▒▒▒██ ╚█████╔╝
171
+ ██▓▓██╔╝ ██▓▓██╗
172
+ ██▒▒██║ ╚█████╔╝
173
+ ╚═════╝ ╚════╝
174
+
175
+ A8
176
+ Authenik8 CLI
177
+ Build
177
178
  `,
178
179
  `
179
- ██▓▓██╗ ██▓▓██╗
180
- ██▒▒██╔╝ ██▒▒██╔╝
181
- ██▒▒▒▒██ ╚█████╔╝
182
- ██▓▓██╔╝ ██▒▒██╗
183
- ██▒▒██║ ╚█████╔╝
184
- ╚═════╝ ╚════╝
180
+ ██▓▓██╗ ██▓▓██╗
181
+ ██▒▒██╔╝ ██▒▒██╔╝
182
+ ██▒▒▒▒██ ╚█████╔╝
183
+ ██▓▓██╔╝ ██▒▒██╗
184
+ ██▒▒██║ ╚█████╔╝
185
+ ╚═════╝ ╚════╝
185
186
 
186
- A8
187
- Authenik8 CLI
187
+ A8
188
+ Authenik8 CLI
188
189
 
189
190
  `
190
191
  ];
@@ -219,325 +220,337 @@ async function showBootLogo() {
219
220
  }
220
221
  //const isResume = process.argv.includes("--resume");
221
222
  async function main() {
222
- await showBootLogo();
223
- if (process.argv.includes("--help")) {
224
- console.log(`
223
+ try {
224
+ await showBootLogo();
225
+ if (process.argv.includes("--help")) {
226
+ console.log(`
225
227
  Authenik8 CLI
226
228
 
227
229
  Usage:
228
- create-authenik8-app <project-name>
230
+ create-authenik8-app <project-name>
229
231
 
230
232
  Options:
231
- --resume Resume project setup(in development)
232
- --help Show this help message
233
- --production-ready production mode
233
+ --resume Resume project setup(in development)
234
+ --help Show this help message
235
+ --production-ready production mode
234
236
  Features:
235
- - Express backend (default)
236
- - Optional Prisma ORM
237
- - PostgreSQL (production)
238
- - SQLite (quick start)
239
- - Optional Git initialization
240
- - Optional OAuth
237
+
238
+ Express backend (default)
239
+
240
+ Optional Prisma ORM
241
+
242
+ PostgreSQL (production)
243
+
244
+ SQLite (quick start)
245
+
246
+ Optional Git initialization
247
+
248
+ Optional OAuth
249
+
241
250
 
242
251
  Examples:
243
- create-authenik8-app my-app
252
+ create-authenik8-app my-app
244
253
  `);
245
- process.exit(0);
246
- }
247
- console.log(chalk.gray(`
254
+ process.exit(0);
255
+ }
256
+ console.log(chalk.gray(`
248
257
  Available options:
249
- Authentication setup:
250
- • base (JWT only)
251
- • auth (JWT + Password/Email auth)
252
- • auth-oauth(JWT+ Password/Email + oauth)
253
-
254
- Frameworks:
255
- • Express
256
- • Fastify(coming soon)
257
-
258
- Database (if Prisma enabled):
259
- • PostgreSQL
260
- • SQLite (quick start)
261
-
262
- Features:
263
- • Prisma ORM (optional)
264
- • Git initialization (optional)
265
- • OAuth + Auth
258
+ Authentication setup:
259
+ • base (JWT only)
260
+ • auth (JWT + Password/Email auth)
261
+ • auth-oauth(JWT+ Password/Email + oauth)
262
+
263
+ Frameworks:
264
+ • Express
265
+ • Fastify(coming soon)
266
+
267
+ Database (if Prisma enabled):
268
+ • PostgreSQL
269
+ • SQLite (quick start)
270
+
271
+ Features:
272
+ • Prisma ORM (optional)
273
+ • Git initialization (optional)
274
+ • OAuth + Auth
266
275
  `));
267
- answers = await inquirer.prompt([
268
- {
269
- type: "list",
270
- name: "framework",
271
- message: "Choose framework:",
272
- choices: ["Express", "Fastify (coming soon)"],
273
- default: state.framework ?? "Express",
274
- },
275
- {
276
- type: "confirm",
277
- name: "usePrisma",
278
- message: "Use Prisma?",
279
- default: state.usePrisma ?? true,
280
- },
281
- {
282
- type: "list",
283
- name: "database",
284
- message: "Choose database:",
285
- choices: [
286
- { name: "PostgreSQL", value: "postgresql(recommended for auth)" },
287
- { name: "SQLite (quick start, limited features)", value: "sqlite" }
288
- ],
289
- when: (answers) => answers.usePrisma,
290
- default: state.database ?? "sqlite",
291
- },
292
- {
293
- type: "confirm",
294
- name: "useGit",
295
- message: "Initialize git?",
296
- default: state.useGit ?? true,
297
- }, {
298
- type: "list",
299
- name: "authMode",
300
- message: "Choose authentication setup:",
301
- choices: [
302
- { name: "JWT only (no auth routes)", value: "base" },
303
- { name: "Email + Password Auth", value: "auth" },
304
- { name: "Full Auth (Password + OAuth)", value: "auth-oauth" },
305
- ],
306
- default: state.authMode ?? "base"
307
- }
308
- ]);
309
- function assertRequired(value, name) {
310
- if (value === undefined || value === null || value === "") {
311
- console.log(`❌ Missing required input: ${name}`);
312
- process.exit(1);
313
- }
314
- }
315
- const finalConfig = {
316
- ...state,
317
- ...answers,
318
- };
319
- assertRequired(finalConfig.framework, "framework");
320
- assertRequired(finalConfig.authMode, "authMode");
321
- if (finalConfig.usePrisma && !finalConfig.database) {
322
- finalConfig.database = "sqlite";
323
- }
324
- if (finalConfig.usePrisma) {
325
- assertRequired(finalConfig.database, "database");
326
- }
327
- if (finalConfig.usePrisma && !answers.database && !state.database) {
328
- console.log(chalk.gray("ℹ️ Defaulting to SQLite (quick start)"));
329
- }
330
- if (!answers.authMode || !answers.framework) {
331
- console.log("❌ Invalid setup state. Restart CLI.");
332
- process.exit(1);
333
- }
334
- console.log(chalk.cyan("\n⚙️ Setting things up...\n"));
335
- const templateRoot = path.resolve(__dirname, "../../templates");
336
- let templateName = "express-base";
337
- if (answers.authMode === "auth") {
338
- templateName = "express-auth";
339
- }
340
- if (answers.authMode === "auth-oauth") {
341
- templateName = "express-auth+";
342
- }
343
- const templatePath = path.join(templateRoot, templateName);
344
- // 📁 Create project (SPINNER)
345
- const createSpinner = ora("Creating project structure...").start();
346
- try {
347
- await fs.copy(templatePath, targetDir);
348
- projectCreated = true;
349
- createSpinner.succeed("Project files created");
350
- }
351
- catch (err) {
352
- createSpinner.fail("Failed to create project");
353
- console.error(err);
354
- process.exit(1);
355
- }
356
- let selectedHash = "bcryptjs"; // default safe fallback
357
- if (answers.authMode !== "base") {
358
- const authSpinner = ora("Installing password auth...").start();
359
- selectedHash = getBestHashLib();
360
- try {
361
- spawnSync("npm", ["install", selectedHash], {
362
- cwd: targetDir,
363
- stdio: "ignore"
364
- });
365
- authSpinner.succeed(`Password auth ready ${selectedHash}`);
366
- }
367
- catch (err) {
368
- if (selectedHash !== "bcryptjs") {
369
- authSpinner.warn(`${selectedHash} failed, falling back to bcryptjs`);
370
- spawnSync("npm", ["install", "bcryptjs"], {
371
- cwd: targetDir,
372
- stdio: "ignore",
373
- });
374
- selectedHash = "bcryptjs";
375
- authSpinner.succeed("Password auth ready (bcryptjs fallback)");
276
+ answers = await inquirer.prompt([
277
+ {
278
+ type: "list",
279
+ name: "framework",
280
+ message: "Choose framework:",
281
+ choices: ["Express", "Fastify (coming soon)"],
282
+ default: state.framework ?? "Express",
283
+ },
284
+ {
285
+ type: "confirm",
286
+ name: "usePrisma",
287
+ message: "Use Prisma?",
288
+ default: state.usePrisma ?? true,
289
+ },
290
+ {
291
+ type: "list",
292
+ name: "database",
293
+ message: "Choose database:",
294
+ choices: [
295
+ { name: "PostgreSQL", value: "postgresql" },
296
+ { name: "SQLite ", value: "sqlite" }
297
+ ],
298
+ when: (answers) => answers.usePrisma,
299
+ default: state.database ?? "sqlite",
300
+ },
301
+ {
302
+ type: "confirm",
303
+ name: "useGit",
304
+ message: "Initialize git?",
305
+ default: state.useGit ?? true,
306
+ }, {
307
+ type: "list",
308
+ name: "authMode",
309
+ message: "Choose authentication setup:",
310
+ choices: [
311
+ { name: "JWT only", value: "base" },
312
+ { name: "Email + Password Auth", value: "auth" },
313
+ { name: "Full Auth (Password + OAuth)", value: "auth-oauth" },
314
+ ],
315
+ default: state.authMode ?? "base"
376
316
  }
377
- else {
378
- authSpinner.fail("Failed to install password auth");
317
+ ]);
318
+ function assertRequired(value, name) {
319
+ if (value === undefined || value === null || value === "") {
320
+ console.log(`❌ Missing required input: ${name}`);
379
321
  process.exit(1);
380
322
  }
381
323
  }
382
- }
383
- const hashLib = getBestHashLib(); // or CLI decision
384
- await fs.writeFile(path.join(targetDir, "src/utils/hash.ts"), generateHashModule(hashLib));
385
- const deps = [];
386
- if (hashLib === "argon2")
387
- deps.push("argon2");
388
- if (hashLib === "bcryptjs")
389
- deps.push("bcryptjs");
390
- if (deps.length) {
391
- execSync(`npm install ${deps.join(" ")}`, {
392
- cwd: targetDir,
393
- stdio: "ignore",
394
- });
395
- }
396
- ;
397
- if (answers.usePrisma) {
398
- const prismaSpinner = ora("Adding Prisma setup...").start();
399
- try {
400
- const dbType = answers.database ===
401
- "postgresql" ? "postgresql"
402
- : "sqlite";
403
- const prismaTemplatePath = path.join(templateRoot, `prisma/${dbType}`);
404
- // Copy prisma schema
405
- await fs.copy(path.join(prismaTemplatePath, "schema.prisma"), path.join(targetDir, "prisma/schema.prisma"));
406
- // Copy env
407
- await fs.copy(path.join(prismaTemplatePath, ".env"), path.join(targetDir, ".env"));
408
- const pkgPath = path.join(targetDir, "package.json");
409
- const pkg = await fs.readJson(pkgPath);
410
- await fs.writeJson(pkgPath, pkg, { spaces: 2 });
411
- // Inject dependencies
412
- pkg.dependencies = {
413
- ...pkg.dependencies,
414
- "@prisma/client": "5.22.0",
415
- };
416
- pkg.devDependencies = {
417
- ...pkg.devDependencies,
418
- prisma: "5.22.0",
419
- };
420
- // Add scripts
421
- pkg.scripts = {
422
- ...pkg.scripts,
423
- "prisma:generate": "prisma generate",
424
- "prisma:migrate": "prisma migrate dev",
425
- };
426
- prismaSpinner.succeed(`Prisma (${dbType}) configured`);
324
+ const finalConfig = {
325
+ ...state,
326
+ ...answers,
327
+ };
328
+ assertRequired(finalConfig.framework, "framework");
329
+ assertRequired(finalConfig.authMode, "authMode");
330
+ if (finalConfig.usePrisma && !finalConfig.database) {
331
+ finalConfig.database = "sqlite";
427
332
  }
428
- catch (err) {
429
- prismaSpinner.fail("Failed to setup Prisma");
430
- console.error(err);
333
+ if (finalConfig.usePrisma) {
334
+ assertRequired(finalConfig.database, "database");
335
+ }
336
+ if (finalConfig.usePrisma && !answers.database && !state.database) {
337
+ console.log(chalk.gray("ℹ️ Defaulting to SQLite (quick start)"));
338
+ }
339
+ if (!answers.authMode || !answers.framework) {
340
+ console.log("❌ Invalid setup state. Restart CLI.");
341
+ process.exit(1);
342
+ }
343
+ console.log(chalk.cyan("\n⚙️ Setting things up...\n"));
344
+ const templateRoot = path.resolve(__dirname, "../../templates");
345
+ let templateName = "express-base";
346
+ if (answers.authMode === "auth") {
347
+ templateName = "express-auth";
348
+ }
349
+ if (answers.authMode === "auth-oauth") {
350
+ templateName = "express-auth+";
431
351
  }
432
- const installSpinner = ora("Installing dependencies...(this may take a few minutes)").start();
352
+ const templatePath = path.join(templateRoot, templateName);
353
+ // 📁 Create project (SPINNER)
354
+ const createSpinner = ora("Creating project structure...").start();
433
355
  try {
434
- execSync("npm install", {
435
- cwd: targetDir,
436
- stdio: "ignore",
437
- });
438
- installSpinner.succeed("Dependencies installed");
356
+ await fs.copy(templatePath, targetDir);
357
+ projectCreated = true;
358
+ createSpinner.succeed("Project files created");
439
359
  }
440
360
  catch (err) {
441
- installSpinner.fail("Failed to install dependencies");
361
+ createSpinner.fail("Failed to create project");
442
362
  console.error(err);
443
363
  process.exit(1);
444
364
  }
445
- if (answers.usePrisma) {
446
- const prismaGenSpinner = ora("Generating Prisma client...").start();
365
+ let selectedHash = "bcryptjs"; // default safe fallback
366
+ if (answers.authMode !== "base") {
367
+ const authSpinner = ora("Installing password auth...").start();
368
+ selectedHash = getBestHashLib();
447
369
  try {
448
- execSync("npx prisma@5.22.0 generate", {
370
+ spawnSync("npm", ["install", selectedHash], {
449
371
  cwd: targetDir,
450
372
  stdio: "ignore"
451
373
  });
452
- prismaGenSpinner.succeed("Prisma client generated");
374
+ authSpinner.succeed(`Password auth ready ${selectedHash}`);
453
375
  }
454
376
  catch (err) {
455
- prismaGenSpinner.fail("Failed to generate Prisma client");
456
- console.error(err);
377
+ if (selectedHash !== "bcryptjs") {
378
+ authSpinner.warn(`${selectedHash} failed, falling back to bcryptjs`);
379
+ spawnSync("npm", ["install", "bcryptjs"], {
380
+ cwd: targetDir,
381
+ stdio: "ignore",
382
+ });
383
+ selectedHash = "bcryptjs";
384
+ authSpinner.succeed("Password auth ready (bcryptjs fallback)");
385
+ }
386
+ else {
387
+ authSpinner.fail("Failed to install password auth");
388
+ process.exit(1);
389
+ }
457
390
  }
458
391
  }
459
- if (isProduction) {
460
- const pm2Spinner = ora("Setting up production mode (PM2)...").start();
392
+ if (answers.authMode !== "base") {
393
+ const hashLib = getBestHashLib(); // or CLI decision
394
+ await fs.writeFile(path.join(targetDir, "src/utils/hash.ts"), generateHashModule(hashLib));
395
+ const deps = [];
396
+ if (hashLib === "argon2")
397
+ deps.push("argon2");
398
+ if (hashLib === "bcryptjs")
399
+ deps.push("bcryptjs");
400
+ if (deps.length) {
401
+ execSync(`npm install ${deps.join(" ")}`, {
402
+ cwd: targetDir,
403
+ stdio: "ignore",
404
+ });
405
+ }
406
+ ;
407
+ }
408
+ if (answers.usePrisma) {
409
+ const prismaSpinner = ora("Adding Prisma setup...").start();
410
+ try {
411
+ const dbType = answers.database ===
412
+ "postgresql" ? "postgresql"
413
+ : "sqlite";
414
+ const prismaTemplatePath = path.join(templateRoot, `prisma/${dbType}`);
415
+ // Copy prisma schema
416
+ await fs.copy(path.join(prismaTemplatePath, "schema.prisma"), path.join(targetDir, "prisma/schema.prisma"));
417
+ // Copy env
418
+ await fs.copy(path.join(prismaTemplatePath, ".env"), path.join(targetDir, ".env"));
419
+ const pkgPath = path.join(targetDir, "package.json");
420
+ const pkg = await fs.readJson(pkgPath);
421
+ await fs.writeJson(pkgPath, pkg, { spaces: 2 });
422
+ // Inject dependencies
423
+ pkg.dependencies = {
424
+ ...pkg.dependencies,
425
+ "@prisma/client": "5.22.0",
426
+ };
427
+ pkg.devDependencies = {
428
+ ...pkg.devDependencies,
429
+ prisma: "5.22.0",
430
+ };
431
+ // Add scripts
432
+ pkg.scripts = {
433
+ ...pkg.scripts,
434
+ "prisma:generate": "prisma generate",
435
+ "prisma:migrate": "prisma migrate dev",
436
+ };
437
+ prismaSpinner.succeed(`Prisma (${dbType}) configured`);
438
+ }
439
+ catch (err) {
440
+ prismaSpinner.fail("Failed to setup Prisma");
441
+ console.error(err);
442
+ }
443
+ if (answers.usePrisma) {
444
+ const prismaGenSpinner = ora("Generating Prisma client...").start();
445
+ try {
446
+ execSync("npx prisma@5.22.0 generate", {
447
+ cwd: targetDir,
448
+ stdio: "ignore"
449
+ });
450
+ prismaGenSpinner.succeed("Prisma client generated");
451
+ }
452
+ catch (err) {
453
+ prismaGenSpinner.fail("Failed to generate Prisma client");
454
+ console.error(err);
455
+ }
456
+ }
457
+ const installSpinner = ora("Installing dependencies...(this may take a few minutes)").start();
461
458
  try {
462
- execSync("npm install pm2", {
459
+ execSync("npm install", {
463
460
  cwd: targetDir,
464
461
  stdio: "ignore",
465
462
  });
466
- pm2Spinner.succeed("PM2 installed (production-ready)");
463
+ installSpinner.succeed("Dependencies installed");
467
464
  }
468
465
  catch (err) {
469
- pm2Spinner.fail("Failed to install PM2");
466
+ installSpinner.fail("Failed to install dependencies");
467
+ console.error(err);
468
+ process.exit(1);
469
+ }
470
+ if (isProduction) {
471
+ const pm2Spinner = ora("Setting up production mode (PM2)...").start();
472
+ try {
473
+ execSync("npm install pm2", {
474
+ cwd: targetDir,
475
+ stdio: "ignore",
476
+ });
477
+ pm2Spinner.succeed("PM2 installed (production-ready)");
478
+ }
479
+ catch (err) {
480
+ pm2Spinner.fail("Failed to install PM2");
481
+ }
470
482
  }
471
483
  }
472
- }
473
- if (answers.useGit) {
474
- const gitSpinner = ora("Initializing git...").start();
475
- try {
476
- execSync("git init", {
477
- cwd: targetDir,
478
- stdio: "ignore",
479
- });
480
- gitSpinner.succeed("Git initialized");
481
- }
482
- catch (err) {
483
- gitSpinner.fail("Git init failed");
484
+ if (answers.useGit) {
485
+ const gitSpinner = ora("Initializing git...").start();
486
+ try {
487
+ execSync("git init", {
488
+ cwd: targetDir,
489
+ stdio: "ignore",
490
+ });
491
+ gitSpinner.succeed("Git initialized");
492
+ }
493
+ catch (err) {
494
+ gitSpinner.fail("Git init failed");
495
+ }
484
496
  }
485
- }
486
- console.log(chalk.green.bold("\n🎉 Authenik8 app created successfully!\n"));
487
- if (isProduction) {
488
- fs.appendFileSync(path.join(targetDir, "README.md"), `
497
+ console.log(chalk.green.bold("\n🎉 Authenik8 app created successfully!\n"));
498
+ if (isProduction) {
499
+ fs.appendFileSync(path.join(targetDir, "README.md"), `
489
500
 
490
- ## 🚀 Production Mode
501
+ 🚀 Production Mode
491
502
 
492
503
  This project is configured for production using PM2.
493
504
 
494
- ### Start app in cluster mode:
505
+ Start app in cluster mode:
506
+
495
507
  npm run pm2:start
496
508
 
497
- ### View logs:
509
+ View logs:
510
+
498
511
  npm run pm2:logs
499
512
 
500
- ### Stop app:
513
+ Stop app:
514
+
501
515
  npm run pm2:stop
502
516
 
503
- `);
504
- }
505
- console.log(chalk.white(`
517
+ `);
518
+ }
519
+ console.log(chalk.white(`
506
520
  Next steps:
507
521
 
508
- cd ${projectName}
509
- redis-server --daemonize yes
510
- npm run dev
522
+ cd ${projectName}
523
+ redis-server --daemonize yes
524
+ npm run dev
511
525
 
512
- Auth Features:
513
- ${answers.authMode === "base"
514
- ? "✓ JWT only"
515
- : answers.authMode === "auth"
516
- ? "✓ Email + Password"
517
- : "✓ Password + OAuth (Google/GitHub)"}
518
-
526
+ Auth Features:
527
+ ${answers.authMode === "base"
528
+ ? "✓ JWT only"
529
+ : answers.authMode === "auth"
530
+ ? "✓ Email + Password"
531
+ : "✓ Password + OAuth (Google/GitHub)"}
519
532
 
520
533
  🛠 Stack:
521
- ✔ Express
522
- ✔ ${answers.usePrisma ? (answers.database.includes("postgresql") ? "PostgreSQL" : "SQLite") : "No database"}
523
- ✔ ${answers.usePrisma ? "Prisma ORM" : "No ORM"}
534
+ ✔ Express
535
+ ✔ ${answers.usePrisma ? (answers.database.includes("postgresql") ? "PostgreSQL" : "SQLite") : "No database"}
536
+ ✔ ${answers.usePrisma ? "Prisma ORM" : "No ORM"}
524
537
 
525
- 📡 Endpoints:
538
+ 📡 API Routes:
526
539
  ${answers.authMode === "base"
527
- ? `
540
+ ? `
528
541
  GET /public
529
542
  GET /guest
530
543
  GET /protected
531
544
  POST /refresh
532
545
  `
533
- : answers.authMode === "auth"
534
- ? `
546
+ : answers.authMode === "auth"
547
+ ? `
535
548
  POST /auth/register
536
549
  POST /auth/login
537
550
  POST /auth/refresh
538
551
  GET /protected
539
552
  `
540
- : `
553
+ : `
541
554
  POST /auth/register
542
555
  POST /auth/login
543
556
  POST /auth/refresh
@@ -546,11 +559,10 @@ ${answers.authMode === "base"
546
559
  GET /protected
547
560
  `}
548
561
 
549
-
550
562
  🔥 You're ready to build.
551
- `));
552
- if (isProduction) {
553
- console.log(`
563
+ `));
564
+ if (isProduction) {
565
+ console.log(`
554
566
  🚀 Production Ready Enabled:
555
567
 
556
568
  ✔ PM2 installed
@@ -558,10 +570,19 @@ ${answers.authMode === "base"
558
570
  ✔ Memory auto-restart (300MB)
559
571
 
560
572
  Run:
561
- npm run pm2:start
573
+ npm run pm2:start
562
574
  `);
575
+ }
576
+ }
577
+ catch (err) {
578
+ console.error("Fatal error", err);
579
+ process.exit(1);
563
580
  }
564
581
  }
582
+ process.on("SIGINT", () => {
583
+ console.log("\n👋 Cancelled.");
584
+ process.exit(0);
585
+ });
565
586
  main().catch(async (err) => {
566
587
  if (err instanceof ExitPromptError) {
567
588
  console.log("\n👋 Authenik8 setup cancelled.");
@@ -571,5 +592,7 @@ main().catch(async (err) => {
571
592
  }
572
593
  process.exit(0);
573
594
  }
595
+ console.error("❌ Unexpected error:", err);
596
+ process.exit(1);
574
597
  });
575
598
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bin/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bin/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-authenik8-app",
3
- "version": "2.0.5",
3
+ "version": "2.0.6",
4
4
  "description": "Create production-ready backend APIs in seconds. Authenik8 scaffolds Express + Prisma projects with JWT authentication, database setup (PostgreSQL or SQLite), and scalable architecture out of the box.",
5
5
  "bin": {
6
6
  "create-authenik8-app": "dist/bin/index.js"
@@ -29,7 +29,6 @@
29
29
  "author": "Karabo Seeisa",
30
30
  "type": "module",
31
31
  "dependencies": {
32
- "argon2": "^0.44.0",
33
32
  "authenik8-core": "^1.0.3",
34
33
  "chalk": "^5.6.2",
35
34
  "fs-extra": "^11.3.4",
@@ -44,6 +43,6 @@
44
43
  "devDependencies": {
45
44
  "@types/express": "^5.0.6",
46
45
  "@types/fs-extra": "^11.0.4",
47
- "@types/node": "^25.5.0"
46
+ "@types/node": "^25.6.0"
48
47
  }
49
48
  }
File without changes
@@ -1,12 +1,17 @@
1
1
  import express from "express";
2
2
  import { getAuth } from "./auth";
3
3
 
4
+
4
5
  const router = express.Router();
5
6
 
6
- router.get("/protected", (req, res,next) => {
7
- const auth = getAuth();
8
- return auth.requireAdmin(req,res,next);},(req,res)=>{
9
- res.json({ message: "Protected route" });
7
+
8
+ router.get("/protected", (req, res) => {
9
+
10
+ const auth = getAuth()
11
+
12
+ return auth.requireAdmin(req, res, next);
13
+ }, (req, res) => {
14
+ res.json({ message: "Protected route" });
10
15
  });
11
16
 
12
17
  export default router;
File without changes
@@ -1,4 +1,3 @@
1
-
2
- DATABASE_URL="postgresql://postgres:password@localhost:5432/authenik8_dev"
3
-
4
- DIRECT_URL="postgresql://postgres:password@localhost:5432/authenik8_dev"
1
+ DATABASE_URL="postgresql://USER:PASSWORD@HOST:PORT/DATABASE?schema=public"
2
+ #localdev
3
+ DATABASE_URL="postgresql://postgres:password@localhost:5432/authenik8"
@@ -1,9 +0,0 @@
1
- JWT_SECRET=your_secret
2
- REFRESH_SECRET=your_secret
3
-
4
-
5
- # OAuth (if used)
6
- GOOGLE_CLIENT_ID=
7
- GOOGLE_CLIENT_SECRET=
8
- GITHUB_CLIENT_ID=
9
- GITHUB_CLIENT_SECRET=
@@ -1,9 +0,0 @@
1
- JWT_SECRET=your_secret
2
- REFRESH_SECRET=your_secret
3
-
4
-
5
- # OAuth (if used)
6
- GOOGLE_CLIENT_ID=
7
- GOOGLE_CLIENT_SECRET=
8
- GITHUB_CLIENT_ID=
9
- GITHUB_CLIENT_SECRET=