projax 1.3.11 → 1.3.13

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 (40) hide show
  1. package/dist/api/package.json +10 -7
  2. package/dist/index.js +100 -1
  3. package/package.json +9 -1
  4. package/dist/core.d.ts +0 -2
  5. package/dist/core.js +0 -76
  6. package/dist/electron/renderer/assets/index-7KIJIiIM.js +0 -42
  7. package/dist/electron/renderer/assets/index-BGV4pGGx.js +0 -46
  8. package/dist/electron/renderer/assets/index-BTFVUZ9M.js +0 -46
  9. package/dist/electron/renderer/assets/index-BT_e6Msc.js +0 -46
  10. package/dist/electron/renderer/assets/index-Bu1Gyxs5.js +0 -46
  11. package/dist/electron/renderer/assets/index-BwyNdCvJ.js +0 -46
  12. package/dist/electron/renderer/assets/index-C9bA-P-3.css +0 -1
  13. package/dist/electron/renderer/assets/index-CJlaCHj5.css +0 -1
  14. package/dist/electron/renderer/assets/index-CTxba8Fs.js +0 -61
  15. package/dist/electron/renderer/assets/index-C_6HLZ3g.js +0 -46
  16. package/dist/electron/renderer/assets/index-Cejn7BcN.js +0 -46
  17. package/dist/electron/renderer/assets/index-CfEtNYYJ.js +0 -46
  18. package/dist/electron/renderer/assets/index-CgMqjX1w.css +0 -1
  19. package/dist/electron/renderer/assets/index-CknIIag9.js +0 -61
  20. package/dist/electron/renderer/assets/index-Cs0biDoD.css +0 -1
  21. package/dist/electron/renderer/assets/index-Csg1hzAW.js +0 -61
  22. package/dist/electron/renderer/assets/index-CtD66H57.js +0 -46
  23. package/dist/electron/renderer/assets/index-Cz5tpCH_.css +0 -1
  24. package/dist/electron/renderer/assets/index-CzSAm4rV.js +0 -46
  25. package/dist/electron/renderer/assets/index-D5r8Ki4V.js +0 -46
  26. package/dist/electron/renderer/assets/index-D7t8lZFK.js +0 -46
  27. package/dist/electron/renderer/assets/index-D8AivBJO.js +0 -42
  28. package/dist/electron/renderer/assets/index-DPZN2_De.css +0 -1
  29. package/dist/electron/renderer/assets/index-DZfKv3qb.js +0 -61
  30. package/dist/electron/renderer/assets/index-DmLmfvuw.css +0 -1
  31. package/dist/electron/renderer/assets/index-DtjxFwRT.css +0 -1
  32. package/dist/electron/renderer/assets/index-DyhB_yB5.js +0 -61
  33. package/dist/electron/renderer/assets/index-FdqNz85q.css +0 -1
  34. package/dist/electron/renderer/assets/index-IV4RpG6x.css +0 -1
  35. package/dist/electron/renderer/assets/index-O6z5EG_7.js +0 -46
  36. package/dist/electron/renderer/assets/index-_QUmEi7R.css +0 -1
  37. package/dist/electron/renderer/assets/index-ezVMxZrM.css +0 -1
  38. package/dist/prxi.d.ts +0 -2
  39. package/dist/prxi.js +0 -297
  40. package/dist/prxi.mjs +0 -34059
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "projax-api",
3
- "version": "1.3.0",
3
+ "version": "1.3.13",
4
4
  "description": "REST API server for projax project dashboard (internal use)",
5
5
  "private": true,
6
6
  "main": "dist/index.js",
@@ -11,15 +11,18 @@
11
11
  "clean": "rm -rf dist"
12
12
  },
13
13
  "dependencies": {
14
- "express": "^4.18.2",
15
- "cors": "^2.8.5"
14
+ "cors": "^2.8.5",
15
+ "express": "^4.18.2"
16
+ },
17
+ "optionalDependencies": {
18
+ "better-sqlite3": "^9.2.2"
16
19
  },
17
20
  "devDependencies": {
18
- "@types/express": "^4.17.21",
21
+ "@types/better-sqlite3": "^7.6.13",
19
22
  "@types/cors": "^2.8.17",
23
+ "@types/express": "^4.17.21",
20
24
  "@types/node": "^20.10.0",
21
- "typescript": "^5.3.3",
22
- "ts-node": "^10.9.2"
25
+ "ts-node": "^10.9.2",
26
+ "typescript": "^5.3.3"
23
27
  }
24
28
  }
25
-
package/dist/index.js CHANGED
@@ -1331,6 +1331,105 @@ program
1331
1331
  process.exit(1);
1332
1332
  }
1333
1333
  });
1334
+ // Start Documentation Site command
1335
+ program
1336
+ .command('docs')
1337
+ .description('Start the documentation site')
1338
+ .option('--dev', 'Start in development mode (with hot reload)')
1339
+ .option('--build', 'Build the documentation site')
1340
+ .action(async (options) => {
1341
+ try {
1342
+ // Check for local docsite (development mode)
1343
+ const localDocsitePath = path.join(__dirname, '..', '..', 'docsite');
1344
+ const isLocalDev = fs.existsSync(localDocsitePath) && fs.existsSync(path.join(localDocsitePath, 'package.json'));
1345
+ if (!isLocalDev) {
1346
+ console.error('Error: Documentation site not found.');
1347
+ console.error('\nThe documentation site is only available in local development.');
1348
+ console.error('Please run this command from the projax repository root.');
1349
+ process.exit(1);
1350
+ }
1351
+ if (options.build) {
1352
+ // Build the documentation site
1353
+ console.log('Building documentation site...');
1354
+ const { execSync } = require('child_process');
1355
+ try {
1356
+ execSync('npm run build', {
1357
+ cwd: localDocsitePath,
1358
+ stdio: 'inherit'
1359
+ });
1360
+ console.log('\n✓ Documentation site built successfully!');
1361
+ console.log('Run "npm run serve" in packages/docsite to serve the built site.');
1362
+ }
1363
+ catch (error) {
1364
+ console.error('\nBuild failed.');
1365
+ process.exit(1);
1366
+ }
1367
+ return;
1368
+ }
1369
+ if (options.dev) {
1370
+ // Development mode - start Docusaurus dev server
1371
+ console.log('Starting documentation site in development mode...');
1372
+ const { spawn } = require('child_process');
1373
+ const docusaurusProcess = spawn('npm', ['start'], {
1374
+ cwd: localDocsitePath,
1375
+ stdio: 'inherit',
1376
+ shell: true,
1377
+ });
1378
+ // Handle process termination
1379
+ process.on('SIGINT', () => {
1380
+ docusaurusProcess.kill();
1381
+ process.exit(0);
1382
+ });
1383
+ process.on('SIGTERM', () => {
1384
+ docusaurusProcess.kill();
1385
+ process.exit(0);
1386
+ });
1387
+ return;
1388
+ }
1389
+ // Production mode - check if built, then serve
1390
+ const buildPath = path.join(localDocsitePath, 'build');
1391
+ if (!fs.existsSync(buildPath)) {
1392
+ console.log('Documentation site not built.');
1393
+ console.log('Building documentation site...');
1394
+ const { execSync } = require('child_process');
1395
+ try {
1396
+ execSync('npm run build', {
1397
+ cwd: localDocsitePath,
1398
+ stdio: 'inherit'
1399
+ });
1400
+ }
1401
+ catch (error) {
1402
+ console.error('\nBuild failed. Try running in dev mode: prx docs --dev');
1403
+ console.error('Or manually build: cd packages/docsite && npm run build');
1404
+ process.exit(1);
1405
+ }
1406
+ }
1407
+ console.log('Starting documentation site server...');
1408
+ const { spawn } = require('child_process');
1409
+ const serveProcess = spawn('npm', ['run', 'serve'], {
1410
+ cwd: localDocsitePath,
1411
+ stdio: 'inherit',
1412
+ shell: true,
1413
+ });
1414
+ // Handle process termination
1415
+ process.on('SIGINT', () => {
1416
+ serveProcess.kill();
1417
+ process.exit(0);
1418
+ });
1419
+ process.on('SIGTERM', () => {
1420
+ serveProcess.kill();
1421
+ process.exit(0);
1422
+ });
1423
+ }
1424
+ catch (error) {
1425
+ console.error('Error starting documentation site:', error instanceof Error ? error.message : error);
1426
+ console.log('\nTroubleshooting:');
1427
+ console.log('1. Try dev mode: prx docs --dev');
1428
+ console.log('2. Or build manually: npm run build:docsite');
1429
+ console.log('3. Or run dev server: cd packages/docsite && npm start');
1430
+ process.exit(1);
1431
+ }
1432
+ });
1334
1433
  // API command - show API info and manage API server
1335
1434
  program
1336
1435
  .command('api')
@@ -1426,7 +1525,7 @@ program
1426
1525
  // Check if first argument is not a known command
1427
1526
  (async () => {
1428
1527
  const args = process.argv.slice(2);
1429
- const knownCommands = ['prxi', 'i', 'add', 'list', 'scan', 'remove', 'rn', 'rename', 'cd', 'pwd', 'run', 'ps', 'stop', 'web', 'desktop', 'ui', 'scripts', 'scan-ports', 'api', 'desc', 'description', 'tags', 'open', 'files', 'urls', '--help', '-h', '--version', '-V'];
1528
+ const knownCommands = ['prxi', 'i', 'add', 'list', 'scan', 'remove', 'rn', 'rename', 'cd', 'pwd', 'run', 'ps', 'stop', 'web', 'desktop', 'ui', 'scripts', 'scan-ports', 'api', 'docs', 'desc', 'description', 'tags', 'open', 'files', 'urls', '--help', '-h', '--version', '-V'];
1430
1529
  // If we have at least 1 argument and first is not a known command, treat as project identifier
1431
1530
  if (args.length >= 1 && !knownCommands.includes(args[0])) {
1432
1531
  const projectIdentifier = args[0];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "projax",
3
- "version": "1.3.11",
3
+ "version": "1.3.13",
4
4
  "description": "Cross-platform project management dashboard for tracking local development projects. Features CLI, Terminal UI, Desktop app, REST API, and built-in tools for test detection, port management, and script execution.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -51,6 +51,14 @@
51
51
  "rust",
52
52
  "go"
53
53
  ],
54
+ "repository": {
55
+ "type": "git",
56
+ "url": "git+https://github.com/josetwentyfour/projax.git"
57
+ },
58
+ "bugs": {
59
+ "url": "https://github.com/josetwentyfour/projax/issues"
60
+ },
61
+ "homepage": "https://josetwentyfour.github.io/projax/",
54
62
  "author": "",
55
63
  "license": "MIT"
56
64
  }
package/dist/core.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare const getDatabaseManager: typeof import("projax-core").getDatabaseManager, getAllProjects: typeof import("projax-core").getAllProjects, addProject: typeof import("projax-core").addProject, removeProject: typeof import("projax-core").removeProject, scanProject: typeof import("projax-core").scanProject, scanAllProjects: typeof import("projax-core").scanAllProjects;
2
- export type { Project, Test, ProjectPort } from 'projax-core';
package/dist/core.js DELETED
@@ -1,76 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.scanAllProjects = exports.scanProject = exports.removeProject = exports.addProject = exports.getAllProjects = exports.getDatabaseManager = void 0;
37
- const path = __importStar(require("path"));
38
- let cachedCore = null;
39
- function tryRequire(candidate) {
40
- try {
41
- // eslint-disable-next-line @typescript-eslint/no-var-requires
42
- return require(candidate);
43
- }
44
- catch (error) {
45
- if (!(error instanceof Error) ||
46
- !('code' in error) ||
47
- error.code !== 'MODULE_NOT_FOUND') {
48
- throw error;
49
- }
50
- return null;
51
- }
52
- }
53
- function loadCore() {
54
- if (cachedCore) {
55
- return cachedCore;
56
- }
57
- const candidates = [
58
- // When running the published CLI (core is copied into dist/core)
59
- path.join(__dirname, 'core'),
60
- // When running the CLI directly from the workspace build output
61
- path.join(__dirname, '..', 'core', 'dist'),
62
- path.join(__dirname, '..', '..', 'core', 'dist'),
63
- // Fallback to installed module (useful during development)
64
- 'projax-core',
65
- ];
66
- for (const candidate of candidates) {
67
- const mod = tryRequire(candidate);
68
- if (mod) {
69
- cachedCore = mod;
70
- return mod;
71
- }
72
- }
73
- throw new Error(`Unable to load projax core module. Tried locations: ${candidates.join(', ')}`);
74
- }
75
- const core = loadCore();
76
- exports.getDatabaseManager = core.getDatabaseManager, exports.getAllProjects = core.getAllProjects, exports.addProject = core.addProject, exports.removeProject = core.removeProject, exports.scanProject = core.scanProject, exports.scanAllProjects = core.scanAllProjects;