@deessejs/cli 0.0.17 → 0.1.0

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/bin/deesse.js ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import('../dist/index.js');
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js CHANGED
@@ -1,7 +1,79 @@
1
1
  #!/usr/bin/env node
2
- var A=Object.create;var p=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var z=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty;var v=(e,s,t,o)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of z(s))!D.call(e,r)&&r!==t&&p(e,r,{get:()=>s[r],enumerable:!(o=x(s,r))||o.enumerable});return e};var g=(e,s,t)=>(t=e!=null?A(w(e)):{},v(s||!e||!e.__esModule?p(t,"default",{value:e,enumerable:!0}):t,e));var u=require("commander"),m=require("execa"),n=g(require("picocolors")),h=g(require("dotenv")),c=require("fs"),f=require("path");h.config();var i=new u.Command;i.name("deesse").description("CLI for the DeesseJS framework").version("1.0.0");function y(){let s=(process.env.npm_config_user_agent||"").includes("pnpm");return{name:s?"pnpm":"npm",executor:s?"pnpm":"npx",execArgs:s?["exec"]:[]}}async function b(){let e=y(),s=(0,f.resolve)(process.cwd(),"package.json");(0,c.existsSync)(s)||(console.error(n.default.red("\u274C No package.json found. Please run this command in your project root.")),process.exit(1));let t=JSON.parse((0,c.readFileSync)(s,"utf-8")),o={...t.dependencies,...t.devDependencies},a=["drizzle-orm","drizzle-kit"].filter(l=>!o[l]);if(a.length>0){console.log(n.default.yellow(`\u{1F4E6} Missing required dependencies: ${a.join(", ")}`)),console.log(n.default.blue(`Installing with ${e.name}...`));let l=e.name==="pnpm"?"add":"install";try{await(0,m.execa)(e.name,[l,"-D",...a],{stdio:"inherit"}),console.log(n.default.green(`\u2705 Dependencies installed successfully.
3
- `))}catch{console.error(n.default.red(`\u274C Failed to install dependencies with ${e.name}.`)),process.exit(1)}}}async function d(e,s){let t=y(),o=[...t.execArgs,e,...s];await(0,m.execa)(t.executor,o,{stdio:"inherit"})}i.command("generate").description("Generate the Better Auth schema").action(async()=>{console.log(n.default.blue("\u2728 Generating Better Auth schema..."));try{await d("@better-auth/cli",["generate","--output","./.deesse/schema.ts","--config","./src/deesse.config.ts","--yes"]),console.log(n.default.green("\u2705 Better Auth schema generated in ./.deesse/schema.ts"))}catch{console.error(n.default.red("\u274C Failed to generate Better Auth schema")),process.exit(1)}});i.command("migrate").description("Sync schema and push to database (Better Auth + Drizzle)").option("--dialect <dialect>","Database dialect (postgresql, mysql, sqlite)","postgresql").action(async e=>{await b(),console.log(n.default.cyan(`
4
- Step 1: Synchronizing framework schema...`));try{await d("@better-auth/cli",["generate","--output","./.deesse/schema.ts","--config","./src/deesse.config.ts","--yes"])}catch{process.exit(1)}console.log(n.default.cyan(`
5
- Step 2: Pushing schema to database via Drizzle...`));let s=process.env.DATABASE_URL;s||(console.error(n.default.red("\u274C Error: DATABASE_URL is missing in your .env file.")),process.exit(1));try{await d("drizzle-kit",["push",`--dialect=${e.dialect}`,"--schema=./.deesse/schema.ts",`--url=${s}`]),console.log(n.default.green(`
6
- \u2705 Database synchronization completed!`))}catch{console.error(n.default.red(`
7
- \u274C Failed to push schema via Drizzle.`)),process.exit(1)}});i.parse();
2
+ import * as p from '@clack/prompts';
3
+ import { readFileSync } from 'node:fs';
4
+ import { execSync } from 'node:child_process';
5
+ const getVersion = () => {
6
+ try {
7
+ const packageJson = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf-8'));
8
+ return packageJson.version;
9
+ }
10
+ catch {
11
+ return '0.0.1';
12
+ }
13
+ };
14
+ const showHelp = () => {
15
+ console.log(`
16
+ DeesseJS CLI v${getVersion()}
17
+
18
+ Usage: npx deesse <command>
19
+
20
+ Commands:
21
+ help Show this help message
22
+ init Initialize a new DeesseJS project in current directory
23
+
24
+ Examples:
25
+ npx deesse help
26
+ npx deesse init
27
+
28
+ More commands coming soon!
29
+
30
+ For more information, visit: https://github.com/nesalia-inc/deessejs
31
+ `);
32
+ };
33
+ const runInit = async () => {
34
+ try {
35
+ p.intro(`DeesseJS CLI v${getVersion()}`);
36
+ const confirm = await p.confirm({
37
+ message: 'Initialize a new DeesseJS project in the current directory?',
38
+ });
39
+ if (p.isCancel(confirm) || !confirm) {
40
+ p.cancel('Initialization cancelled.');
41
+ process.exit(0);
42
+ }
43
+ // Use create-deesse-app with current directory
44
+ p.log.info('Running create-deesse-app in current directory...');
45
+ execSync('npx create-deesse-app@latest .', { stdio: 'inherit' });
46
+ p.outro('Project initialized successfully!');
47
+ }
48
+ catch (error) {
49
+ p.cancel('Failed to initialize project');
50
+ if (error instanceof Error) {
51
+ console.error(error.message);
52
+ }
53
+ process.exit(1);
54
+ }
55
+ };
56
+ async function main() {
57
+ const args = process.argv.slice(2);
58
+ const command = args[0] || 'help';
59
+ switch (command) {
60
+ case 'help':
61
+ case '--help':
62
+ case '-h':
63
+ showHelp();
64
+ break;
65
+ case 'init':
66
+ await runInit();
67
+ break;
68
+ default:
69
+ console.log(`Unknown command: ${command}`);
70
+ console.log('Run "npx deesse help" for usage information.');
71
+ process.exit(1);
72
+ }
73
+ }
74
+ main().catch((error) => {
75
+ console.error('An error occurred:');
76
+ console.error(error);
77
+ process.exit(1);
78
+ });
79
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,UAAU,GAAG,GAAG,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CACnE,CAAC;QACF,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,OAAO,CAAC,GAAG,CAAC;gBACE,UAAU,EAAE;;;;;;;;;;;;;;;GAezB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;IACzB,IAAI,CAAC;QACH,CAAC,CAAC,KAAK,CAAC,iBAAiB,UAAU,EAAE,EAAE,CAAC,CAAC;QAEzC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;YAC9B,OAAO,EAAE,6DAA6D;SACvE,CAAC,CAAC;QAEH,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,CAAC,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,+CAA+C;QAC/C,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAChE,QAAQ,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEjE,CAAC,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC;QACzC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IAElC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,QAAQ,EAAE,CAAC;YACX,MAAM;QAER,KAAK,MAAM;YACT,MAAM,OAAO,EAAE,CAAC;YAChB,MAAM;QAER;YACE,OAAO,CAAC,GAAG,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACpC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,33 +1,38 @@
1
1
  {
2
2
  "name": "@deessejs/cli",
3
- "version": "0.0.17",
4
- "description": "DeesseJS CLI",
5
- "main": "./dist/index.js",
3
+ "version": "0.1.0",
4
+ "description": "DeesseJS CLI for managing DeesseJS projects",
5
+ "type": "module",
6
6
  "bin": {
7
- "deesse": "./dist/index.js"
7
+ "deesse": "./bin/deesse.js"
8
8
  },
9
9
  "files": [
10
+ "bin",
10
11
  "dist"
11
12
  ],
12
- "publishConfig": {
13
- "access": "public"
14
- },
15
- "scripts": {
16
- "build": "tsup src/index.ts --format cjs,esm --clean --minify --shims",
17
- "dev": "tsup src/index.ts --format esm --watch",
18
- "prepublishOnly": "pnpm build"
19
- },
13
+ "keywords": [
14
+ "cli",
15
+ "deessejs",
16
+ "deesse"
17
+ ],
18
+ "author": "DeesseJS",
19
+ "license": "MIT",
20
20
  "dependencies": {
21
- "commander": "^14.0.2",
22
- "dotenv": "^17.2.3",
23
- "drizzle-kit": "^0.31.8",
24
- "drizzle-orm": "^0.45.1",
25
- "execa": "^9.6.1",
26
- "picocolors": "^1.1.1"
21
+ "@clack/prompts": "^0.8.2"
27
22
  },
28
23
  "devDependencies": {
29
- "@types/node": "^25.0.3",
30
- "tsup": "^8.5.1",
31
- "typescript": "^5.9.3"
24
+ "@types/node": "^22.10.6",
25
+ "typescript": "^5.7.2"
26
+ },
27
+ "engines": {
28
+ "node": ">=18.0.0"
29
+ },
30
+ "scripts": {
31
+ "dev": "tsc --watch",
32
+ "build": "tsc",
33
+ "type-check": "tsc --noEmit",
34
+ "lint": "eslint src",
35
+ "lint:fix": "eslint src --fix",
36
+ "clean": "rm -rf dist"
32
37
  }
33
- }
38
+ }
package/dist/index.mjs DELETED
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env node
2
- import{Command as p}from"commander";import{execa as l}from"execa";import e from"picocolors";import*as d from"dotenv";import{readFileSync as g,existsSync as u}from"fs";import{resolve as h}from"path";d.config();var o=new p;o.name("deesse").description("CLI for the DeesseJS framework").version("1.0.0");function m(){let s=(process.env.npm_config_user_agent||"").includes("pnpm");return{name:s?"pnpm":"npm",executor:s?"pnpm":"npx",execArgs:s?["exec"]:[]}}async function f(){let n=m(),s=h(process.cwd(),"package.json");u(s)||(console.error(e.red("\u274C No package.json found. Please run this command in your project root.")),process.exit(1));let t=JSON.parse(g(s,"utf-8")),r={...t.dependencies,...t.devDependencies},c=["drizzle-orm","drizzle-kit"].filter(i=>!r[i]);if(c.length>0){console.log(e.yellow(`\u{1F4E6} Missing required dependencies: ${c.join(", ")}`)),console.log(e.blue(`Installing with ${n.name}...`));let i=n.name==="pnpm"?"add":"install";try{await l(n.name,[i,"-D",...c],{stdio:"inherit"}),console.log(e.green(`\u2705 Dependencies installed successfully.
3
- `))}catch{console.error(e.red(`\u274C Failed to install dependencies with ${n.name}.`)),process.exit(1)}}}async function a(n,s){let t=m(),r=[...t.execArgs,n,...s];await l(t.executor,r,{stdio:"inherit"})}o.command("generate").description("Generate the Better Auth schema").action(async()=>{console.log(e.blue("\u2728 Generating Better Auth schema..."));try{await a("@better-auth/cli",["generate","--output","./.deesse/schema.ts","--config","./src/deesse.config.ts","--yes"]),console.log(e.green("\u2705 Better Auth schema generated in ./.deesse/schema.ts"))}catch{console.error(e.red("\u274C Failed to generate Better Auth schema")),process.exit(1)}});o.command("migrate").description("Sync schema and push to database (Better Auth + Drizzle)").option("--dialect <dialect>","Database dialect (postgresql, mysql, sqlite)","postgresql").action(async n=>{await f(),console.log(e.cyan(`
4
- Step 1: Synchronizing framework schema...`));try{await a("@better-auth/cli",["generate","--output","./.deesse/schema.ts","--config","./src/deesse.config.ts","--yes"])}catch{process.exit(1)}console.log(e.cyan(`
5
- Step 2: Pushing schema to database via Drizzle...`));let s=process.env.DATABASE_URL;s||(console.error(e.red("\u274C Error: DATABASE_URL is missing in your .env file.")),process.exit(1));try{await a("drizzle-kit",["push",`--dialect=${n.dialect}`,"--schema=./.deesse/schema.ts",`--url=${s}`]),console.log(e.green(`
6
- \u2705 Database synchronization completed!`))}catch{console.error(e.red(`
7
- \u274C Failed to push schema via Drizzle.`)),process.exit(1)}});o.parse();