@powerhousedao/academy 4.1.0-dev.10 → 4.1.0-dev.100

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 (108) hide show
  1. package/.vscode/settings.json +1 -1
  2. package/CHANGELOG.md +739 -0
  3. package/README.md +3 -3
  4. package/babel.config.js +1 -1
  5. package/blog/BeyondCommunication-ABlueprintForDevelopment.md +25 -24
  6. package/blog/TheChallengeOfChange.md +21 -21
  7. package/docs/academy/01-GetStarted/00-ExploreDemoPackage.mdx +67 -30
  8. package/docs/academy/01-GetStarted/01-CreateNewPowerhouseProject.md +38 -21
  9. package/docs/academy/01-GetStarted/02-DefineToDoListDocumentModel.md +24 -19
  10. package/docs/academy/01-GetStarted/03-ImplementOperationReducers.md +44 -41
  11. package/docs/academy/01-GetStarted/04-BuildToDoListEditor.md +10 -10
  12. package/docs/academy/01-GetStarted/05-VetraStudio.md +164 -0
  13. package/docs/academy/01-GetStarted/06-ReactorMCP.md +58 -0
  14. package/docs/academy/01-GetStarted/home.mdx +185 -90
  15. package/docs/academy/01-GetStarted/images/Modules.png +0 -0
  16. package/docs/academy/01-GetStarted/images/VetraStudioDrive.png +0 -0
  17. package/docs/academy/01-GetStarted/styles.module.css +5 -5
  18. package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/01-Prerequisites.md +46 -18
  19. package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/02-StandardDocumentModelWorkflow.md +118 -68
  20. package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/03-BuilderTools.md +75 -33
  21. package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/_category_.json +6 -6
  22. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/01-WhatIsADocumentModel.md +30 -21
  23. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/02-SpecifyTheStateSchema.md +41 -37
  24. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/03-SpecifyDocumentOperations.md +29 -25
  25. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/04-UseTheDocumentModelGenerator.md +36 -37
  26. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/05-ImplementDocumentReducers.md +128 -109
  27. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/06-ImplementDocumentModelTests.md +95 -86
  28. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/07-ExampleToDoListRepository.md +7 -9
  29. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/_category_.json +6 -6
  30. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/01-BuildingDocumentEditors.md +65 -47
  31. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/02-ConfiguringDrives.md +77 -62
  32. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/03-BuildingADriveExplorer.md +360 -349
  33. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/00-DocumentToolbar.mdx +16 -10
  34. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/01-OperationHistory.md +10 -7
  35. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/02-RevisionHistoryTimeline.md +25 -17
  36. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/_category_.json +6 -6
  37. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-Authorization/01-RenownAuthenticationFlow.md +14 -7
  38. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-Authorization/02-Authorization.md +0 -1
  39. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-Authorization/_category_.json +5 -5
  40. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/_category_.json +1 -1
  41. package/docs/academy/02-MasteryTrack/04-WorkWithData/01-GraphQLAtPowerhouse.md +45 -33
  42. package/docs/academy/02-MasteryTrack/04-WorkWithData/02-UsingTheAPI.mdx +61 -18
  43. package/docs/academy/02-MasteryTrack/04-WorkWithData/03-UsingSubgraphs.md +105 -456
  44. package/docs/academy/02-MasteryTrack/04-WorkWithData/04-analytics-processor.md +126 -110
  45. package/docs/academy/02-MasteryTrack/04-WorkWithData/05-RelationalDbProcessor.md +98 -65
  46. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/GraphQL References/QueryingADocumentWithGraphQL.md +23 -21
  47. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/best-practices.md +9 -9
  48. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/graphql/index.md +11 -23
  49. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/graphql/integration.md +25 -9
  50. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/intro.md +10 -10
  51. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/benchmarks.md +1 -1
  52. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/index.md +16 -11
  53. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/memory.md +6 -5
  54. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/schema.md +2 -2
  55. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/utilities.md +7 -5
  56. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/use-cases/maker.md +32 -58
  57. package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/use-cases/processors.md +1 -1
  58. package/docs/academy/02-MasteryTrack/04-WorkWithData/07-drive-analytics.md +105 -71
  59. package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_01-SetupBuilderEnvironment.md +22 -0
  60. package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_02-CreateNewPowerhouseProject.md +9 -8
  61. package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_03-GenerateAnAnalyticsProcessor.md +28 -32
  62. package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_04-UpdateAnalyticsProcessor.md +25 -26
  63. package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_category_.json +1 -1
  64. package/docs/academy/02-MasteryTrack/04-WorkWithData/_category_.json +7 -7
  65. package/docs/academy/02-MasteryTrack/05-Launch/01-IntroductionToPackages.md +3 -4
  66. package/docs/academy/02-MasteryTrack/05-Launch/02-PublishYourProject.md +69 -45
  67. package/docs/academy/02-MasteryTrack/05-Launch/03-SetupEnvironment.md +70 -40
  68. package/docs/academy/02-MasteryTrack/05-Launch/04-ConfigureEnvironment.md +1 -0
  69. package/docs/academy/02-MasteryTrack/05-Launch/_category_.json +7 -7
  70. package/docs/academy/02-MasteryTrack/_category_.json +6 -6
  71. package/docs/academy/03-ExampleUsecases/Chatroom/02-CreateNewPowerhouseProject.md +5 -3
  72. package/docs/academy/03-ExampleUsecases/Chatroom/03-DefineChatroomDocumentModel.md +38 -37
  73. package/docs/academy/03-ExampleUsecases/Chatroom/04-ImplementOperationReducers.md +45 -41
  74. package/docs/academy/03-ExampleUsecases/Chatroom/05-ImplementChatroomEditor.md +14 -14
  75. package/docs/academy/03-ExampleUsecases/Chatroom/06-LaunchALocalReactor.md +6 -6
  76. package/docs/academy/03-ExampleUsecases/Chatroom/_category_.json +1 -1
  77. package/docs/academy/04-APIReferences/00-PowerhouseCLI.md +181 -68
  78. package/docs/academy/04-APIReferences/01-ReactHooks.md +649 -141
  79. package/docs/academy/04-APIReferences/04-RelationalDatabase.md +121 -113
  80. package/docs/academy/04-APIReferences/05-PHDocumentMigrationGuide.md +48 -41
  81. package/docs/academy/04-APIReferences/_category_.json +6 -6
  82. package/docs/academy/05-Architecture/00-PowerhouseArchitecture.md +1 -2
  83. package/docs/academy/05-Architecture/01-WorkingWithTheReactor.md +11 -8
  84. package/docs/academy/05-Architecture/05-DocumentModelTheory/_category_.json +1 -1
  85. package/docs/academy/05-Architecture/_category_.json +6 -6
  86. package/docs/academy/06-ComponentLibrary/00-DocumentEngineering.md +25 -23
  87. package/docs/academy/06-ComponentLibrary/02-CreateCustomScalars.md +105 -93
  88. package/docs/academy/06-ComponentLibrary/03-IntegrateIntoAReactComponent.md +1 -0
  89. package/docs/academy/06-ComponentLibrary/_category_.json +7 -7
  90. package/docs/academy/07-Cookbook.md +268 -35
  91. package/docs/academy/08-Glossary.md +7 -1
  92. package/docs/bookofpowerhouse/01-Overview.md +2 -2
  93. package/docs/bookofpowerhouse/02-GeneralFrameworkAndPhilosophy.md +1 -7
  94. package/docs/bookofpowerhouse/03-PowerhouseSoftwareArchitecture.md +10 -7
  95. package/docs/bookofpowerhouse/04-DevelopmentApproaches.md +10 -4
  96. package/docs/bookofpowerhouse/05-SNOsandANewModelForOSSandPublicGoods.md +23 -30
  97. package/docs/bookofpowerhouse/06-SNOsInActionAndPlatformEconomies.md +0 -7
  98. package/docusaurus.config.ts +64 -66
  99. package/package.json +9 -7
  100. package/scripts/generate-combined-cli-docs.ts +43 -13
  101. package/sidebars.ts +2 -0
  102. package/src/components/HomepageFeatures/index.tsx +171 -78
  103. package/src/components/HomepageFeatures/styles.module.css +1 -2
  104. package/src/css/custom.css +89 -89
  105. package/src/pages/_archive-homepage.tsx +17 -16
  106. package/src/theme/DocCardList/index.tsx +9 -8
  107. package/static.json +6 -6
  108. package/tsconfig.tsbuildinfo +1 -0
@@ -1,24 +1,58 @@
1
1
  # Powerhouse CLI
2
2
 
3
- ### Installing the Powerhouse CLI
3
+ ### Installing the Powerhouse CLI
4
+
4
5
  :::tip
5
- The **Powerhouse CLI tool** is the only essential tool to install on this page. Install it with the command below.
6
+ The **Powerhouse CLI tool** is the only essential tool to install on this page. Install it with the command below.
6
7
 
7
- You can find all of the commands on this page, similar to what would displayed when using ph --help or ph *command* --help.
8
- Use the table of content or the search function to find what you are looking for.
8
+ You can find all of the commands on this page, similar to what would displayed when using ph --help or ph _command_ --help.
9
+ Use the table of content or the search function to find what you are looking for.
9
10
 
10
11
  The Powerhouse CLI (`ph-cmd`) is a command-line interface tool that provides essential commands for managing Powerhouse projects. You can get access to the Powerhouse ecosystem tools by installing them globally.
11
12
 
12
13
  ```bash
13
14
  pnpm install -g ph-cmd
14
- ```
15
- :::
15
+ ```
16
16
 
17
- <!-- AUTO-GENERATED-CLI-COMMANDS-START -->\n<!-- This content is automatically generated. Do not edit directly. -->\n### ph-cmd Commands\n\n- [Init](#init)
17
+ :::
18
+
19
+ <!-- AUTO-GENERATED-CLI-COMMANDS-START -->\n<!-- This content is automatically generated. Do not edit directly. -->\n### ph-cmd Commands\n\n- [Checkout](#checkout)
20
+ - [Init](#init)
18
21
  - [Setup Globals](#setup-globals)
19
22
  - [Update](#update)
20
23
  - [Use](#use)
21
24
 
25
+ ## Checkout
26
+
27
+ ```
28
+ Command Overview:
29
+ The checkout command clones an existing Powerhouse project from a remote Vetra drive.
30
+ This allows you to work on projects that have been initialized and configured by others.
31
+
32
+ This command:
33
+ 1. Fetches the GitHub repository URL from the specified Vetra remote drive
34
+ 2. Clones the repository to your local machine
35
+ 3. Installs all project dependencies
36
+
37
+ Required Options:
38
+ -r, --remote-drive <url> URL of the Vetra remote drive containing the project.
39
+ The drive must have a Vetra package with a configured GitHub URL.
40
+
41
+ Options:
42
+ --package-manager <pm> Specify which package manager to use for installing dependencies.
43
+ Supported: npm, yarn, pnpm, bun
44
+ If not specified, uses the detected package manager from your environment.
45
+
46
+ Examples:
47
+ $ ph checkout --remote-drive https://vetra.example.com/d/abc123 # Clone project using default package manager
48
+ $ ph checkout --remote-drive https://vetra.example.com/d/abc123 --package-manager pnpm # Clone and install with pnpm
49
+
50
+ Notes:
51
+ - The remote drive must contain a Vetra package document with a GitHub URL configured
52
+ - If no GitHub URL is found, you'll need to use 'ph init --remote-drive' instead to create a new project
53
+ - The repository will be cloned into a directory named after the repository
54
+ ```
55
+
22
56
  ## Init
23
57
 
24
58
  ```
@@ -42,12 +76,14 @@ Options:
42
76
 
43
77
  -i, --interactive Run the command in interactive mode, which will guide you
44
78
  through the project setup with customizable options.
79
+
80
+ -t, --tag Version of the Powerhouse dependencies to use. Defaults to "main"
45
81
 
46
- -v, --version Specify the development version to use. Defaults to "main".
47
-
48
- --dev Use the "development" version of the boilerplate.
82
+ --dev Use the "development" version.
49
83
 
50
- --staging Use the "staging" version of the boilerplate.
84
+ --staging Use the "staging" version.
85
+
86
+ -b, --branch Specify custom boilerplate branch to use.
51
87
 
52
88
  --package-manager Override the auto-detected package manager with the specified one.
53
89
 
@@ -226,15 +262,30 @@ Examples:
226
262
 
227
263
  ```
228
264
  Command Overview:
229
- The Connect build command creates a connect build with the project's local and external packages included.
265
+ The Connect build command creates a production build with the project's local and
266
+ external packages included.
230
267
 
231
268
  Options:
232
- --base <path> The base path for the app. Default is "/".
233
- --project-root <path> The root directory of the project. Default is "process.cwd()".
234
- --assets-dir-name <name> The name of the assets directory. Default is "${DEFAULT_ASSETS_DIR_NAME}".
235
- --external-packages-file-name <name> The name of the external packages file. Default is "${DEFAULT_EXTERNAL_PACKAGES_FILE_NAME}".
236
- --styles-file-name <name> The name of the styles file. Default is "${DEFAULT_STYLES_FILE_NAME}".
237
- --connect-path <path> The path to the Connect dist directory. Calls "resolveConnect()" if not provided.
269
+ --outDir <outDir> Output directory. Defaults to 'dist'.
270
+
271
+ --base <base> Base path for the app. Default is "/".
272
+
273
+ --mode <mode> Vite mode to use (e.g., development, production).
274
+
275
+ --config-file <configFile> Path to the powerhouse.config.js file.
276
+
277
+ --vite-config-file <file> Path to the vite config file.
278
+
279
+ --project-root <path> The root directory of the project. Default is current directory.
280
+
281
+ Examples:
282
+ $ ph connect build # Build with defaults
283
+ $ ph connect build --outDir build # Output to 'build' directory
284
+ $ ph connect build --base /app # Set base path to '/app'
285
+ $ ph connect build --mode production # Use production mode
286
+ $ ph connect build --config-file custom.config.js # Use custom configuration
287
+ $ ph connect build --vite-config-file vite.config.js # Use custom vite config
288
+ $ ph connect build --project-root /path/to/project # Set project root
238
289
  ```
239
290
 
240
291
  ## Connect Preview
@@ -245,10 +296,38 @@ Command Overview:
245
296
  NOTE: You must run \`ph connect build\` first.
246
297
 
247
298
  Options:
248
- --base <path> The base path for the app. Default is "/".
249
- --project-root <path> The root directory of the project. Default is "process.cwd()".
250
- --port <port> The port to run the server on. Default is 4173.
251
- --open Open the browser. Default is true.
299
+ --outDir <outDir> Output directory. Defaults to 'dist'.
300
+
301
+ --port <port> Port to run the server on. Default is 3000.
302
+
303
+ --host Expose the server to the network.
304
+
305
+ --open Open browser on startup.
306
+
307
+ --strictPort Exit if specified port is already in use.
308
+
309
+ --base <base> Base path for the app. Default is "/".
310
+
311
+ --mode <mode> Vite mode to use (e.g., development, production).
312
+
313
+ --config-file <configFile> Path to the powerhouse.config.js file.
314
+
315
+ --vite-config-file <file> Path to the vite config file.
316
+
317
+ --project-root <path> The root directory of the project. Default is current directory.
318
+
319
+ Examples:
320
+ $ ph connect preview # Preview with defaults
321
+ $ ph connect preview --outDir build # Preview from 'build' directory
322
+ $ ph connect preview --port 8080 # Preview on port 8080
323
+ $ ph connect preview --host # Expose to network
324
+ $ ph connect preview --open # Open browser automatically
325
+ $ ph connect preview --strictPort # Exit if port is in use
326
+ $ ph connect preview --base /app # Set base path to '/app'
327
+ $ ph connect preview --mode production # Use production mode
328
+ $ ph connect preview --config-file custom.config.js # Use custom configuration
329
+ $ ph connect preview --vite-config-file vite.config.js # Use custom vite config
330
+ $ ph connect preview --project-root /path/to/project # Set project root
252
331
  ```
253
332
 
254
333
  ## Connect Studio
@@ -256,7 +335,7 @@ Options:
256
335
  ```
257
336
  Command Overview:
258
337
  The connect command starts the Connect Studio, a development environment for building
259
- and testing Powerhouse applications. It provides a visual interface for working with
338
+ and testing Powerhouse applications. It provides a visual interface for working with
260
339
  your project.
261
340
 
262
341
  This command:
@@ -266,27 +345,41 @@ Command Overview:
266
345
  4. Supports various configuration options for customization
267
346
 
268
347
  Options:
269
- -p, --port <port> Port to run the server on. Default is 3000.
270
-
271
- -h, --host Expose the server to the network. By default, the server
272
- only accepts connections from localhost.
273
-
274
- --https Enable HTTPS for secure connections. You may need to provide
275
- certificate files for this option to work properly.
276
-
277
- --open Automatically open the browser window after starting the server.
278
-
279
- --config-file <path> Path to the powerhouse.config.js file. This allows you to
280
- customize the behavior of Connect Studio.
348
+ --port <port> Port to run the server on. Default is 3000.
349
+
350
+ --host Expose the server to the network. By default, the server
351
+ only accepts connections from localhost.
352
+
353
+ --open Automatically open the browser window after starting the server.
354
+
355
+ --cors Enable CORS (Cross-Origin Resource Sharing).
356
+
357
+ --strictPort Exit if specified port is already in use.
358
+
359
+ --force Force the optimizer to ignore the cache and re-bundle.
360
+
361
+ --mode <mode> Vite mode to use (e.g., development, production).
362
+
363
+ --config-file <configFile> Path to the powerhouse.config.js file. This allows you to
364
+ customize the behavior of Connect Studio.
365
+
366
+ --vite-config-file <file> Path to the vite config file.
367
+
368
+ --project-root <path> The root directory of the project. Default is current directory.
281
369
 
282
370
  Examples:
283
- $ ph connect # Start Connect Studio on default port 3000
284
- $ ph connect -p 8080 # Start on port 8080
285
- $ ph connect -h # Expose to network (not just localhost)
286
- $ ph connect --https # Enable HTTPS
287
- $ ph connect --open # Open browser automatically
288
- $ ph connect --config-file custom.config.js # Use custom configuration
289
- $ ph connect -p 8080 --open # Start on port 8080 and open browser
371
+ $ ph connect # Start Connect Studio on default port 3000
372
+ $ ph connect --port 8080 # Start on port 8080
373
+ $ ph connect --host # Expose to network (not just localhost)
374
+ $ ph connect --open # Open browser automatically
375
+ $ ph connect --cors # Enable CORS
376
+ $ ph connect --strictPort # Exit if port is in use
377
+ $ ph connect --force # Force re-bundle
378
+ $ ph connect --mode production # Use production mode
379
+ $ ph connect --config-file custom.config.js # Use custom configuration
380
+ $ ph connect --vite-config-file vite.config.js # Use custom vite config
381
+ $ ph connect --project-root /path/to/project # Set project root
382
+ $ ph connect --port 8080 --open # Start on port 8080 and open browser
290
383
  ```
291
384
 
292
385
  ## Dev
@@ -361,7 +454,7 @@ Options:
361
454
 
362
455
  -p, --processor <name> Name of the processor to generate.
363
456
 
364
- --processor-type <type> Type of processor to generate.
457
+ --processor-type <type> Type of processor to generate. 'relationalDb' or 'analytics'
365
458
 
366
459
  -s, --subgraph <name> Name of the subgraph to use or create.
367
460
 
@@ -388,7 +481,7 @@ Examples:
388
481
  $ ph generate my-document-model.zip # Generate from a specific model zip file
389
482
  $ ph generate -i # Run in interactive mode
390
483
  $ ph generate --editor ToDoList --document-types powerhouse/todo # Generate a ToDoList editor for todo documents
391
- $ ph generate -p MyProcessor # Generate a specific processor
484
+ $ ph generate -p MyProcessor --processor-type relationalDb # Generate a specific processor
392
485
  $ ph generate --watch # Generate and watch for changes
393
486
  $ ph generate --drive-editor custom-drive-explorer # Generate a custom drive editor
394
487
  $ ph generate -s MySubgraph # Generate with a specific subgraph
@@ -611,6 +704,10 @@ Options:
611
704
  --config-file <path> Path to the powerhouse.config.js file. Default is
612
705
  './powerhouse.config.json'. This configures the switchboard behavior.
613
706
 
707
+ --dev Enable development mode to load local packages from the current directory.
708
+ This allows the switchboard to discover and load document models, processors,
709
+ and subgraphs from your local development environment.
710
+
614
711
  --db-path <DB_PATH> Path to the database for storing document data.
615
712
 
616
713
  --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.
@@ -626,6 +723,7 @@ Options:
626
723
  Examples:
627
724
  $ ph switchboard # Start switchboard with default settings
628
725
  $ ph switchboard --port 5000 # Use custom port 5000
726
+ $ ph switchboard --dev # Enable dev mode to load local packages
629
727
  $ ph switchboard --config-file custom.json # Use custom configuration file
630
728
  $ ph switchboard --packages pkg1 pkg2 # Load specific packages
631
729
  $ ph switchboard --base-path /switchboard # Set API base path to /switchboard
@@ -709,45 +807,60 @@ Notes:
709
807
 
710
808
  ```
711
809
  Command Overview:
712
- The vetra command sets up a complete Vetra development environment for working with Vetra projects.
713
- It starts three coordinated services: a Vetra Switchboard, a Local Reactor, and Connect Studio,
714
- enabling full document collaboration and real-time processing with a "Vetra" drive.
810
+ The vetra command sets up a Vetra development environment for working with Vetra projects.
811
+ It starts a Vetra Switchboard and optionally Connect Studio, enabling document collaboration
812
+ and real-time processing with a "Vetra" drive or connection to remote drives.
715
813
 
716
814
  This command:
717
815
  1. Starts a Vetra Switchboard with a "Vetra" drive for document storage
718
- 2. Starts a Local Reactor that connects to the Vetra Switchboard as a remote drive
719
- 3. Starts Connect Studio pointing to the Local Reactor for user interaction
720
- 4. Enables real-time updates, collaboration, and code generation across all services
816
+ 2. Optionally connects to remote drives instead of creating a local drive
817
+ 3. Starts Connect Studio pointing to the Switchboard for user interaction (unless disabled)
818
+ 4. Enables real-time updates, collaboration, and code generation
721
819
 
722
820
  Options:
723
- --generate Generate code automatically when document models are updated.
724
- This keeps your code in sync with model changes across all services.
821
+ --logs Enable verbose logging for all services. This provides detailed
822
+ output from Switchboard and Connect during startup and operation.
725
823
 
726
- --switchboard-port <port> Specify the port to use for the Vetra Switchboard service.
727
- Default is 4001. The Switchboard handles document storage.
824
+ --switchboard-port <port> Specify the port to use for the Vetra Switchboard service.
825
+ Default is 4001. The Switchboard handles document storage.
728
826
 
729
- --reactor-port <port> Specify the port to use for the Local Reactor service.
730
- Default is 4002. The Reactor provides the main API and connects to switchboard.
827
+ --connect-port <port> Specify the port to use for Connect Studio.
828
+ Default is 3000. Connect provides the user interface.
731
829
 
732
- --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.
830
+ --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.
733
831
 
734
- --https-cert-file <path> Path to the SSL certificate file if using HTTPS.
832
+ --https-cert-file <path> Path to the SSL certificate file if using HTTPS.
735
833
 
736
- --config-file <path> Path to the powerhouse.config.js file. This allows you to
737
- customize the behavior of all services in the Vetra development environment.
834
+ --config-file <path> Path to the powerhouse.config.js file. This allows you to
835
+ customize the behavior of the Vetra development environment.
738
836
 
739
- -w, --watch Watch for local changes to document models and processors,
740
- and automatically update both the Switchboard and Reactor accordingly.
837
+ -w, --watch Enable dynamic loading for document-models and editors in
838
+ connect-studio and switchboard. When enabled, the system will
839
+ watch for changes in these directories and reload them dynamically.
840
+
841
+ --remote-drive <url> URL of remote drive to connect to. When specified, the switchboard
842
+ connects to this remote drive instead of creating a local Vetra drive.
843
+
844
+ --disable-connect Skip Connect initialization (only start switchboard and reactor).
845
+ Use this when you only need the backend services running.
846
+
847
+ --interactive Enable interactive mode for code generation. When enabled, the system
848
+ will prompt for user confirmation before generating code. This is useful
849
+ for development when you want control over when code regeneration happens.
741
850
 
742
851
  Examples:
743
- $ ph vetra # Start complete Vetra environment with defaults
744
- $ ph vetra --generate # Auto-generate code on model changes
745
- $ ph vetra --switchboard-port 5000 --reactor-port 5001 # Use custom ports
746
- $ ph vetra --config-file custom.powerhouse.config.js # Use custom configuration
747
- $ ph vetra --watch # Watch for changes and auto-update
852
+ $ ph vetra # Start Vetra environment with defaults
853
+ $ ph vetra --switchboard-port 5000 --connect-port 3001 # Use custom ports
854
+ $ ph vetra --config-file custom.powerhouse.config.js # Use custom configuration
855
+ $ ph vetra --watch # Enable dynamic loading for development
856
+ $ ph vetra -w # Enable dynamic loading (short form)
857
+ $ ph vetra --logs # Enable detailed logging
858
+ $ ph vetra --remote-drive http://localhost:4001/d/docs # Connect to remote drive
859
+ $ ph vetra --disable-connect # Start only backend services
860
+ $ ph vetra --interactive # Enable interactive code generation mode
748
861
  $ ph vetra --https-key-file key.pem --https-cert-file cert.pem # Use HTTPS
749
862
  ```
750
863
 
751
864
  ---
752
865
 
753
- *This document was automatically generated from the help text in the codebase.*\n<!-- AUTO-GENERATED-CLI-COMMANDS-END -->
866
+ *This document was automatically generated from the help text in the codebase.*\n<!-- AUTO-GENERATED-CLI-COMMANDS-END -->