rapidkit 0.25.0 → 0.25.2

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/dist/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "rapidkit",
3
- "version": "0.25.0",
3
+ "version": "0.25.2",
4
4
  "type": "module",
5
- "description": "Create RapidKit projects with a single command - The official CLI for RapidKit framework",
5
+ "description": "Official CLI for RapidKit, an open-source workspace platform that standardizes how teams build, scale, and deploy backend services.",
6
6
  "keywords": [
7
7
  "rapidkit",
8
8
  "cli",
@@ -1 +1 @@
1
- export{j as __test__,b as checkRapidkitCoreAvailable,h as getCachedCoreTopLevelCommands,g as getCoreTopLevelCommands,i as getModulesCatalog,c as resolveRapidkitPython,d as runCoreRapidkit,f as runCoreRapidkitCapture,e as runCoreRapidkitStreamed}from'./chunk-D46IWAXH.js';
1
+ export{j as __test__,b as checkRapidkitCoreAvailable,h as getCachedCoreTopLevelCommands,g as getCoreTopLevelCommands,i as getModulesCatalog,c as resolveRapidkitPython,d as runCoreRapidkit,f as runCoreRapidkitCapture,e as runCoreRapidkitStreamed}from'./chunk-UOGFCKQ5.js';
@@ -1,6 +1,6 @@
1
- import {c}from'./chunk-N64Z3XVF.js';import {j}from'./chunk-FXRDNZGB.js';import {promises}from'fs';import d from'path';import r from'chalk';import w from'ora';import {execa}from'execa';function $(e){let t=d.resolve(e);return process.platform==="win32"?t.toLowerCase():t}function N(e){let t=$(e.path),i=Array.isArray(e.projects)?e.projects:[],a=[],o=new Set;for(let c of i){if(!c||typeof c.name!="string"||typeof c.path!="string")continue;let n=$(c.path);o.has(n)||(o.add(n),a.push({name:c.name,path:n}));}return {name:e.name,path:t,mode:e.mode,projects:a}}function v(e){let t=[],i=new Set;for(let a of e.workspaces||[]){if(!a||typeof a.name!="string"||typeof a.path!="string")continue;let o=N(a);i.has(o.path)||(i.add(o.path),t.push(o));}return {workspaces:t}}async function S(e,t){try{let i=$(e),a=j(),o=d.join(a,"workspaces.json");await promises.mkdir(a,{recursive:true});let c={workspaces:[]};try{let s=await promises.readFile(o,"utf8"),m=JSON.parse(s);m&&Array.isArray(m.workspaces)&&(c=v(m));}catch{}c.workspaces.some(s=>s.path===i)||(c.workspaces.push({name:t,path:i,mode:"full",projects:[]}),await promises.writeFile(o,JSON.stringify(c,null,2)));}catch{console.warn(r.gray("Note: Could not register workspace in shared registry"));}}async function z(e,t=false){try{let i=$(e),a=j(),o=d.join(a,"workspaces.json"),c={workspaces:[]};try{let p=await promises.readFile(o,"utf8"),g=JSON.parse(p);g&&Array.isArray(g.workspaces)&&(c=v(g));}catch{t||console.log("\u26A0\uFE0F Workspace registry not found");return}let n=c.workspaces.find(p=>p.path===i);if(!n){t||console.log("\u26A0\uFE0F Workspace not registered in registry");return}Array.isArray(n.projects)||(n.projects=[]);let s=await promises.readdir(e,{withFileTypes:true}),m=0,h=0;for(let p of s)if(p.isDirectory()&&!p.name.startsWith(".")){let g=$(d.join(e,p.name)),C=d.join(g,".rapidkit","context.json"),j=d.join(g,".rapidkit","project.json");try{let k=false;try{await promises.access(C),k=true;}catch{await promises.access(j),k=true;}k&&(n.projects.some(x=>x.path===g||x.name===p.name)?h++:(n.projects.push({name:p.name,path:g}),m++,t||console.log(`\u2714 Added: ${p.name}`)));}catch{}}m>0?(await promises.writeFile(o,JSON.stringify(c,null,2)),t||console.log(`
1
+ import {c}from'./chunk-N64Z3XVF.js';import {j}from'./chunk-Z5LKRG57.js';import {promises}from'fs';import d from'path';import r from'chalk';import w from'ora';import {execa}from'execa';function f(e){let t=d.resolve(e);return process.platform==="win32"?t.toLowerCase():t}function S(e){let t=f(e.path),i=Array.isArray(e.projects)?e.projects:[],a=[],o=new Set;for(let s of i){if(!s||typeof s.name!="string"||typeof s.path!="string")continue;let n=f(s.path);o.has(n)||(o.add(n),a.push({name:s.name,path:n}));}return {name:e.name,path:t,mode:e.mode,projects:a}}function v(e){let t=[],i=new Set;for(let a of e.workspaces||[]){if(!a||typeof a.name!="string"||typeof a.path!="string")continue;let o=S(a);i.has(o.path)||(i.add(o.path),t.push(o));}return {workspaces:t}}async function N(e,t){try{let i=f(e),a=j(),o=d.join(a,"workspaces.json");await promises.mkdir(a,{recursive:true});let s={workspaces:[]};try{let p=await promises.readFile(o,"utf8"),m=JSON.parse(p);m&&Array.isArray(m.workspaces)&&(s=v(m));}catch{}s.workspaces.some(p=>p.path===i)||(s.workspaces.push({name:t,path:i,mode:"full",projects:[]}),await promises.writeFile(o,JSON.stringify(s,null,2)));}catch{console.warn(r.gray("Note: Could not register workspace in shared registry"));}}async function J(e,t=false){try{let i=f(e),a=j(),o=d.join(a,"workspaces.json"),s={workspaces:[]};try{let c=await promises.readFile(o,"utf8"),g=JSON.parse(c);g&&Array.isArray(g.workspaces)&&(s=v(g));}catch{t||console.log("\u26A0\uFE0F Workspace registry not found");return}let n=s.workspaces.find(c=>c.path===i);if(!n){t||console.log("\u26A0\uFE0F Workspace not registered in registry");return}Array.isArray(n.projects)||(n.projects=[]);let p=await promises.readdir(e,{withFileTypes:true}),m=0,h=0;for(let c of p)if(c.isDirectory()&&!c.name.startsWith(".")){let g=f(d.join(e,c.name)),R=d.join(g,".rapidkit","context.json"),j=d.join(g,".rapidkit","project.json");try{let k=false;try{await promises.access(R),k=true;}catch{await promises.access(j),k=true;}k&&(n.projects.some(_=>_.path===g||_.name===c.name)?h++:(n.projects.push({name:c.name,path:g}),m++,t||console.log(`\u2714 Added: ${c.name}`)));}catch{}}m>0?(await promises.writeFile(o,JSON.stringify(s,null,2)),t||console.log(`
2
2
  \u2705 Synced ${m} project(s) to registry`)):t||console.log(`
3
- \u2705 All projects already registered (${h} found)`);}catch(i){t||console.error("\u274C Failed to sync projects:",i.message);}}async function J(e,t,i){try{let a=$(e),o=$(i),c=j(),n=d.join(c,"workspaces.json"),s={workspaces:[]};try{let p=await promises.readFile(n,"utf8"),g=JSON.parse(p);g&&Array.isArray(g.workspaces)&&(s=v(g));}catch{return}let m=s.workspaces.find(p=>p.path===a);if(!m)return;Array.isArray(m.projects)||(m.projects=[]),m.projects.some(p=>p.path===o||p.name===t)||(m.projects.push({name:t,path:o}),await promises.writeFile(n,JSON.stringify(s,null,2)));}catch{}}async function K(e,t){let i=w("Creating RapidKit workspace...").start();try{await promises.mkdir(e,{recursive:true}),await promises.mkdir(d.join(e,".rapidkit"),{recursive:true});let a={workspace_name:t.name,author:t.author,rapidkit_version:c(),created_at:new Date().toISOString(),type:"workspace"};await promises.writeFile(d.join(e,".rapidkit","config.json"),JSON.stringify(a,null,2));let o=E();await promises.writeFile(d.join(e,"rapidkit"),o),await promises.chmod(d.join(e,"rapidkit"),493);let c$1=A(t.name);if(await promises.writeFile(d.join(e,"README.md"),c$1),await promises.writeFile(d.join(e,".gitignore"),`# RapidKit workspace
3
+ \u2705 All projects already registered (${h} found)`);}catch(i){t||console.error("\u274C Failed to sync projects:",i.message);}}async function K(e,t,i){try{let a=f(e),o=f(i),s=j(),n=d.join(s,"workspaces.json"),p={workspaces:[]};try{let c=await promises.readFile(n,"utf8"),g=JSON.parse(c);g&&Array.isArray(g.workspaces)&&(p=v(g));}catch{return}let m=p.workspaces.find(c=>c.path===a);if(!m)return;Array.isArray(m.projects)||(m.projects=[]),m.projects.some(c=>c.path===o||c.name===t)||(m.projects.push({name:t,path:o}),await promises.writeFile(n,JSON.stringify(p,null,2)));}catch{}}async function G(e,t){let i=w("Creating RapidKit workspace...").start();try{await promises.mkdir(e,{recursive:true}),await promises.mkdir(d.join(e,".rapidkit"),{recursive:true});let a={workspace_name:t.name,author:t.author,rapidkit_version:c(),created_at:new Date().toISOString(),type:"workspace"};await promises.writeFile(d.join(e,".rapidkit","config.json"),JSON.stringify(a,null,2));let o=E();await promises.writeFile(d.join(e,"rapidkit"),o),await promises.chmod(d.join(e,"rapidkit"),493);let s=L();await promises.writeFile(d.join(e,"rapidkit.cmd"),s);let n=b(t.name);if(await promises.writeFile(d.join(e,"README.md"),n),await promises.writeFile(d.join(e,".gitignore"),`# RapidKit workspace
4
4
  .env
5
5
  .env.*
6
6
  !.env.example
@@ -15,12 +15,13 @@ Thumbs.db
15
15
 
16
16
  # Logs
17
17
  *.log
18
- `),await promises.writeFile(d.join(e,".rapidkit-workspace"),JSON.stringify({signature:"RAPIDKIT_WORKSPACE",createdBy:"rapidkit-npm",version:c(),createdAt:new Date().toISOString(),name:t.name},null,2)),await D(e),i.succeed("Workspace created!"),!t.skipGit){let s=w("Initializing git repository...").start();try{await execa("git",["init"],{cwd:e}),await execa("git",["add","."],{cwd:e}),await execa("git",["commit","-m","Initial commit: RapidKit workspace"],{cwd:e}),s.succeed("Git repository initialized");}catch{s.warn("Could not initialize git repository");}}await S(e,t.name),console.log(`
18
+ `),await promises.writeFile(d.join(e,".rapidkit-workspace"),JSON.stringify({signature:"RAPIDKIT_WORKSPACE",createdBy:"rapidkit-npm",version:c(),createdAt:new Date().toISOString(),name:t.name},null,2)),await I(e),i.succeed("Workspace created!"),!t.skipGit){let m=w("Initializing git repository...").start();try{await execa("git",["init"],{cwd:e}),await execa("git",["add","."],{cwd:e}),await execa("git",["commit","-m","Initial commit: RapidKit workspace"],{cwd:e}),m.succeed("Git repository initialized");}catch{m.warn("Could not initialize git repository");}}await N(e,t.name),console.log(`
19
19
  ${r.green("\u2728 RapidKit workspace created successfully!")}
20
20
 
21
21
  ${r.bold("\u{1F4C2} Workspace structure:")}
22
22
  ${e}/
23
23
  \u251C\u2500\u2500 rapidkit # Local CLI wrapper
24
+ \u251C\u2500\u2500 rapidkit.cmd # Windows local CLI wrapper
24
25
  \u251C\u2500\u2500 .rapidkit/ # Workspace configuration
25
26
  \u2502 \u251C\u2500\u2500 config.json # Workspace settings
26
27
  \u2502 \u2514\u2500\u2500 templates/ # Project templates
@@ -43,7 +44,7 @@ ${r.bold("\u{1F4DA} Commands:")}
43
44
  npx rapidkit dev Start dev server
44
45
  npx rapidkit help Show all commands
45
46
 
46
- ${r.gray("Alternative: ./rapidkit dev, make dev")}
47
+ ${r.gray("Alternative: ./rapidkit dev (Windows: .\\rapidkit.cmd dev), make dev")}
47
48
  ${r.gray("\u{1F4A1} Tip: Install globally (npm i -g rapidkit) to use without npx")}
48
49
  `);}catch(a){throw i.fail("Failed to create workspace"),a}}function E(){return `#!/usr/bin/env bash
49
50
  #
@@ -393,7 +394,27 @@ main() {
393
394
  }
394
395
 
395
396
  main "$@"
396
- `}function A(e){return `# ${e}
397
+ `}function L(){return `@echo off
398
+ setlocal enabledelayedexpansion
399
+
400
+ set "SCRIPT_DIR=%~dp0"
401
+
402
+ where sh >nul 2>nul
403
+ if %ERRORLEVEL%==0 (
404
+ sh "%SCRIPT_DIR%rapidkit" %*
405
+ exit /b %ERRORLEVEL%
406
+ )
407
+
408
+ where bash >nul 2>nul
409
+ if %ERRORLEVEL%==0 (
410
+ bash "%SCRIPT_DIR%rapidkit" %*
411
+ exit /b %ERRORLEVEL%
412
+ )
413
+
414
+ echo [RapidKit] No sh/bash found. Falling back to npx rapidkit.
415
+ npx rapidkit %*
416
+ exit /b %ERRORLEVEL%
417
+ `}function b(e){return `# ${e}
397
418
 
398
419
  RapidKit workspace for building API projects.
399
420
 
@@ -441,7 +462,7 @@ npx rapidkit dev # Start dev server
441
462
 
442
463
  - [RapidKit Documentation](https://rapidkit.dev)
443
464
  - [GitHub Repository](https://github.com/Baziar/rapidkit)
444
- `}async function D(e){let{fileURLToPath:t}=await import('url'),i=t(import.meta.url),a=d.dirname(i),o=d.resolve(a,".."),c=d.join(o,"templates","kits"),n=d.join(e,".rapidkit","templates"),{default:s}=await import('fs-extra');await s.copy(c,n);let m=d.join(o,"templates","generator.js"),h=d.join(e,".rapidkit","generator.js");await s.copy(m,h);}async function G(e,t){let i=t.template==="fastapi",a=i?"FastAPI":"NestJS",o=w(`Creating ${a} project...`).start();try{let{fileURLToPath:c$1}=await import('url'),n=c$1(import.meta.url),s=d.dirname(n),m=d.resolve(s,".."),h=i?"fastapi-standard":"nestjs-standard",p=d.join(m,"templates","kits",h);await promises.mkdir(e,{recursive:true});let g={project_name:i?t.name.replace(/-/g,"_").toLowerCase():t.name.replace(/_/g,"-").toLowerCase(),author:t.author,description:t.description||`${a} application generated with RapidKit`,app_version:"0.1.0",license:"MIT",package_manager:t.package_manager||"npm",created_at:new Date().toISOString(),rapidkit_version:c()};await R(p,e,g);let C=i?`# Python
465
+ `}async function I(e){let{fileURLToPath:t}=await import('url'),i=t(import.meta.url),a=d.dirname(i),o=d.resolve(a,".."),s=d.join(o,"templates","kits"),n=d.join(e,".rapidkit","templates"),{default:p}=await import('fs-extra');await p.copy(s,n);let m=d.join(o,"templates","generator.js"),h=d.join(e,".rapidkit","generator.js");await p.copy(m,h);}async function Y(e,t){let i=t.template==="fastapi",a=i?"FastAPI":"NestJS",o=w(`Creating ${a} project...`).start();try{let{fileURLToPath:s}=await import('url'),n=s(import.meta.url),p=d.dirname(n),m=d.resolve(p,".."),h=i?"fastapi-standard":"nestjs-standard",c$1=d.join(m,"templates","kits",h);await promises.mkdir(e,{recursive:true});let g={project_name:i?t.name.replace(/-/g,"_").toLowerCase():t.name.replace(/_/g,"-").toLowerCase(),author:t.author,description:t.description||`${a} application generated with RapidKit`,app_version:"0.1.0",license:"MIT",package_manager:t.package_manager||"npm",created_at:new Date().toISOString(),rapidkit_version:c()};await x(c$1,e,g);let R=i?`# Python
445
466
  __pycache__/
446
467
  *.py[cod]
447
468
  *$py.class
@@ -509,7 +530,7 @@ Thumbs.db
509
530
 
510
531
  # Coverage
511
532
  coverage/
512
- `;if(await promises.writeFile(d.join(e,".gitignore"),C),o.succeed(`${a} project created!`),!t.skipGit){let k=w("Initializing git repository...").start();try{await execa("git",["init"],{cwd:e}),await execa("git",["add","."],{cwd:e}),await execa("git",["commit","-m",`Initial commit: ${a} project via RapidKit`],{cwd:e}),k.succeed("Git repository initialized");}catch{k.warn("Could not initialize git repository");}}if(!t.skipInstall&&!i){let k=t.package_manager||"npm",_=w(`Installing dependencies with ${k}...`).start();try{await execa(k,["install"],{cwd:e}),_.succeed("Dependencies installed");}catch{_.warn(`Could not install dependencies. Run '${k} install' manually.`);}}let j=d.basename(e);console.log(i?`
533
+ `;if(await promises.writeFile(d.join(e,".gitignore"),R),o.succeed(`${a} project created!`),!t.skipGit){let k=w("Initializing git repository...").start();try{await execa("git",["init"],{cwd:e}),await execa("git",["add","."],{cwd:e}),await execa("git",["commit","-m",`Initial commit: ${a} project via RapidKit`],{cwd:e}),k.succeed("Git repository initialized");}catch{k.warn("Could not initialize git repository");}}if(!t.skipInstall&&!i){let k=t.package_manager||"npm",C=w(`Installing dependencies with ${k}...`).start();try{await execa(k,["install"],{cwd:e}),C.succeed("Dependencies installed");}catch{C.warn(`Could not install dependencies. Run '${k} install' manually.`);}}let j=d.basename(e);console.log(i?`
513
534
  ${r.green("\u2728 FastAPI project created successfully!")}
514
535
 
515
536
  ${r.bold("\u{1F4C2} Project structure:")}
@@ -575,16 +596,16 @@ ${r.bold("\u{1F310} API endpoints:")}
575
596
  http://localhost:8000/examples/notes # Example API
576
597
 
577
598
  ${r.gray("\u{1F4A1} Tip: Install globally (npm i -g rapidkit) to use without npx")}
578
- `);}catch(c){throw o.fail(`Failed to create ${a} project`),c}}async function R(e,t,i){let a=await promises.readdir(e,{withFileTypes:true});for(let o of a){let c=d.join(e,o.name),n=o.name.replace(/\.j2$/,""),s=d.join(t,n);if(o.isDirectory())await promises.mkdir(s,{recursive:true}),await R(c,s,i);else {let m=await promises.readFile(c,"utf-8");o.name.endsWith(".j2")&&(m=b(m,i)),await promises.writeFile(s,m),(n==="rapidkit"||n==="activate"||n.endsWith(".py")&&s.includes(".rapidkit"))&&await promises.chmod(s,493);}}}function b(e,t){let i=e;for(let[a,o]of Object.entries(t)){let c=new RegExp(`\\{\\{\\s*${a}\\s*\\}\\}`,"g");i=i.replace(c,String(o));let n=new RegExp(`\\{\\{\\s*${a}\\s*\\|\\s*replace\\s*\\(\\s*['"]([^'"]+)['"]\\s*,\\s*['"]([^'"]*)['"]\\s*\\)\\s*\\}\\}`,"g");i=i.replace(n,(h,p,g)=>String(o).replace(new RegExp(p,"g"),g));let s=new RegExp(`\\{\\{\\s*${a}\\s*\\|\\s*lower\\s*\\}\\}`,"g");i=i.replace(s,String(o).toLowerCase());let m=new RegExp(`\\{\\{\\s*${a}\\s*\\|\\s*replace\\s*\\(\\s*['"]([^'"]+)['"]\\s*,\\s*['"]([^'"]*)['"]\\s*\\)\\s*\\|\\s*lower\\s*\\}\\}`,"g");i=i.replace(m,(h,p,g)=>String(o).replace(new RegExp(p,"g"),g).toLowerCase());}return i}async function Y(){let e=j(),t=d.join(e,"workspaces.json");if(!await promises.stat(t).catch(()=>null)){console.log(r.yellow(`
599
+ `);}catch(s){throw o.fail(`Failed to create ${a} project`),s}}async function x(e,t,i){let a=await promises.readdir(e,{withFileTypes:true});for(let o of a){let s=d.join(e,o.name),n=o.name.replace(/\.j2$/,""),p=d.join(t,n);if(o.isDirectory())await promises.mkdir(p,{recursive:true}),await x(s,p,i);else {let m=await promises.readFile(s,"utf-8");o.name.endsWith(".j2")&&(m=D(m,i)),await promises.writeFile(p,m),(n==="rapidkit"||n==="activate"||n.endsWith(".py")&&p.includes(".rapidkit"))&&await promises.chmod(p,493);}}}function D(e,t){let i=e;for(let[a,o]of Object.entries(t)){let s=new RegExp(`\\{\\{\\s*${a}\\s*\\}\\}`,"g");i=i.replace(s,String(o));let n=new RegExp(`\\{\\{\\s*${a}\\s*\\|\\s*replace\\s*\\(\\s*['"]([^'"]+)['"]\\s*,\\s*['"]([^'"]*)['"]\\s*\\)\\s*\\}\\}`,"g");i=i.replace(n,(h,c,g)=>String(o).replace(new RegExp(c,"g"),g));let p=new RegExp(`\\{\\{\\s*${a}\\s*\\|\\s*lower\\s*\\}\\}`,"g");i=i.replace(p,String(o).toLowerCase());let m=new RegExp(`\\{\\{\\s*${a}\\s*\\|\\s*replace\\s*\\(\\s*['"]([^'"]+)['"]\\s*,\\s*['"]([^'"]*)['"]\\s*\\)\\s*\\|\\s*lower\\s*\\}\\}`,"g");i=i.replace(m,(h,c,g)=>String(o).replace(new RegExp(c,"g"),g).toLowerCase());}return i}async function V(){let e=j(),t=d.join(e,"workspaces.json");if(!await promises.stat(t).catch(()=>null)){console.log(r.yellow(`
579
600
  \u26A0\uFE0F No workspaces registered yet.
580
601
  `)),console.log(r.gray(`Create a workspace with: npx rapidkit <workspace-name>
581
602
  `));return}try{let i=await promises.readFile(t,"utf8"),a=JSON.parse(i);if(!a||typeof a!="object"||!Array.isArray(a.workspaces)){console.log(r.yellow(`
582
603
  \u26A0\uFE0F Workspace registry is invalid; resetting to empty state.
583
- `)),await promises.writeFile(t,JSON.stringify({workspaces:[]},null,2));return}let o=v(a),c=[],n=0;for(let p of o.workspaces)await promises.stat(p.path).catch(()=>null)?c.push(p):n+=1;let s={workspaces:c},m=JSON.stringify(a),h=JSON.stringify(s);if(m!==h&&await promises.writeFile(t,JSON.stringify(s,null,2)),!s.workspaces||s.workspaces.length===0){console.log(r.yellow(`
604
+ `)),await promises.writeFile(t,JSON.stringify({workspaces:[]},null,2));return}let o=v(a),s=[],n=0;for(let c of o.workspaces)await promises.stat(c.path).catch(()=>null)?s.push(c):n+=1;let p={workspaces:s},m=JSON.stringify(a),h=JSON.stringify(p);if(m!==h&&await promises.writeFile(t,JSON.stringify(p,null,2)),!p.workspaces||p.workspaces.length===0){console.log(r.yellow(`
584
605
  \u26A0\uFE0F No workspaces registered yet.
585
606
  `)),n>0&&console.log(r.gray(`Cleaned ${n} stale workspace entr${n===1?"y":"ies"}.
586
607
  `));return}console.log(r.bold(`
587
608
  \u{1F4E6} Registered RapidKit Workspaces:
588
- `));for(let p of s.workspaces)console.log(r.cyan(` ${p.name}`)),console.log(r.gray(` Path: ${p.path}`)),console.log(r.gray(` Projects: ${p.projects?.length||0}`)),console.log();n>0&&console.log(r.gray(`Cleaned ${n} stale workspace entr${n===1?"y":"ies"}.`)),console.log(r.gray(`Total: ${s.workspaces.length} workspace(s)
609
+ `));for(let c of p.workspaces)console.log(r.cyan(` ${c.name}`)),console.log(r.gray(` Path: ${c.path}`)),console.log(r.gray(` Projects: ${c.projects?.length||0}`)),console.log();n>0&&console.log(r.gray(`Cleaned ${n} stale workspace entr${n===1?"y":"ies"}.`)),console.log(r.gray(`Total: ${p.workspaces.length} workspace(s)
589
610
  `));}catch(i){console.error(r.red(`
590
- \u274C Failed to read workspace registry`)),console.error(r.gray(String(i)));}}export{G as createProject,K as createWorkspace,Y as listWorkspaces,J as registerProjectInWorkspace,S as registerWorkspace,z as syncWorkspaceProjects};
611
+ \u274C Failed to read workspace registry`)),console.error(r.gray(String(i)));}}export{Y as createProject,G as createWorkspace,V as listWorkspaces,K as registerProjectInWorkspace,N as registerWorkspace,J as syncWorkspaceProjects};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rapidkit",
3
- "version": "0.25.0",
3
+ "version": "0.25.2",
4
4
  "type": "module",
5
5
  "description": "Official CLI for RapidKit, an open-source workspace platform that standardizes how teams build, scale, and deploy backend services.",
6
6
  "keywords": [
@@ -1 +0,0 @@
1
- import p from'os';import r from'path';function a(o=process.platform){return o==="win32"?"windows":o==="linux"?"linux":o==="darwin"?"macos":"other"}function n(o=process.platform){return a(o)==="windows"}function u(o=process.platform){return n(o)}function l(o=process.platform){return n(o)?"python":"python3"}function g(o=process.platform){return n(o)?["python","py","python3"]:["python3","python"]}function h(o=14,t=10,s=process.platform){let i=[];if(n(s)){for(let e=o;e>=t;e-=1)i.push({command:"py",args:[`-3.${e}`,"--version"]});return i.push({command:"py",args:["-3","--version"]}),i.push({command:"python",args:["--version"]}),i}for(let e=o;e>=t;e-=1)i.push({command:`python3.${e}`,args:["--version"]});return i.push({command:"python3",args:["--version"]}),i.push({command:"python",args:["--version"]}),i}function P(o,t=process.platform){return n(t)?r.join(o,"Scripts","python.exe"):r.join(o,"bin","python")}function y(o,t=process.platform){return n(t)?r.join(o,"Scripts","rapidkit.exe"):r.join(o,"bin","rapidkit")}function S(o,t=process.platform){return n(t)?r.join(o,"Scripts","activate"):r.join(o,"bin","activate")}function x(o,t=process.platform){return n(t)?[r.join(o,"rapidkit.cmd"),r.join(o,".rapidkit","rapidkit.cmd")]:[r.join(o,"rapidkit"),r.join(o,".rapidkit","rapidkit")]}function j(o=process.env,t=process.platform){let s=o.XDG_CONFIG_HOME||o.APPDATA||r.join(p.homedir(),".config");return n(t)?r.join(s,"rapidkit"):r.join(p.homedir(),".rapidkit")}export{n as a,u as b,l as c,g as d,h as e,P as f,y as g,S as h,x as i,j};