@powerhousedao/academy 0.1.0-dev.3 → 0.1.0-dev.5

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 (189) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +1 -1
  3. package/docs/academy/01-GetStarted/00-ExploreDemoPackage.md +78 -0
  4. package/docs/academy/01-GetStarted/{03-ToDoList/01-CreateNewPowerhouseProject.md → 01-CreateNewPowerhouseProject.md} +10 -8
  5. package/docs/academy/01-GetStarted/02-DefineToDoListDocumentModel.md +97 -0
  6. package/docs/academy/01-GetStarted/{03-ToDoList/03-ImplementOperationReducers.md → 03-ImplementOperationReducers.md} +20 -16
  7. package/docs/academy/01-GetStarted/{03-ToDoList/04-BuildToDoListEditor.md → 04-BuildToDoListEditor.md} +15 -15
  8. package/docs/academy/01-GetStarted/{00-GetStarted.mdx → home.mdx} +41 -52
  9. package/docs/academy/{02-AdvancedTutorial/01-Create/01-SetupBuilderEnvironment.md → 02-MasteryTrack/01-BuilderEnvironment/01-Prerequisites.md} +78 -43
  10. package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/02-StandardDocumentModelWorkflow.md +253 -0
  11. package/docs/academy/{02-AdvancedTutorial/01-Create/00-BuilderTools.md → 02-MasteryTrack/01-BuilderEnvironment/03-BuilderTools.md} +1 -1
  12. package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/_category_.json +7 -0
  13. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/01-WhatIsADocumentModel.md +188 -0
  14. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/02-SpecifyTheStateSchema.md +72 -0
  15. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/03-SpecifyDocumentOperations.md +119 -0
  16. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/04-UseTheDocumentModelGenerator.md +116 -0
  17. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/05-ImplementDocumentReducers.md +282 -0
  18. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/06-ImplementDocumentModelTests.md +277 -0
  19. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/07-ExampleToDoListRepository.md +1 -0
  20. package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/_category_.json +7 -0
  21. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/02-ConfiguringDrives.md +2 -2
  22. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/03-BuildingADriveExplorer.md +1 -1
  23. package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-DocumentTools/00-DocumentToolbar.md +20 -0
  24. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/01-OperationHistory.md +1 -1
  25. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/01-ReadingAndWritingThroughTheAPI.mdx +2 -2
  26. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/02-GraphQLAtPowerhouse.md +1 -1
  27. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/graphql/index.md +1 -1
  28. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/02-IntroductionToPackages.md +2 -2
  29. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/03-RunOnACloudServer.md +3 -3
  30. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/03-SetupEnvironment.md +1 -1
  31. package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/_category_.json +1 -1
  32. package/docs/academy/04-APIReferences/00-PowerhouseCLI.md +740 -0
  33. package/docs/academy/04-APIReferences/01-ReactHooks.md +16 -0
  34. package/docs/academy/04-APIReferences/02-ReactorAPI.md +1 -0
  35. package/docs/academy/04-APIReferences/03-Configuration.md +64 -0
  36. package/docs/academy/{04-ComponentLibrary/01-PowerhouseDesignSystem.md → 06-ComponentLibrary/00-DocumentEngineering.md} +8 -8
  37. package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/02-BuildingWithScalars.md +2 -2
  38. package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/03-Scalar-Components/01-phid-field.mdx +1 -1
  39. package/docs/academy/{06-Cookbook.md → 07-Cookbook.md} +24 -18
  40. package/docs/academy/08-Glossary.md +82 -0
  41. package/docusaurus.config.ts +7 -14
  42. package/package.json +11 -8
  43. package/scripts/generate-combined-cli-docs.ts +80 -0
  44. package/sidebars.ts +100 -14
  45. package/src/components/HomepageFeatures/index.tsx +10 -10
  46. package/src/css/custom.css +11 -0
  47. package/src/pages/{index.tsx → _archive-homepage.tsx} +1 -1
  48. package/src/theme/DocCardList/index.tsx +30 -0
  49. package/static/img/storybook-icon.svg +18 -0
  50. package/docs/academy/01-GetStarted/01-InstallDemoPackage.md +0 -38
  51. package/docs/academy/01-GetStarted/02-LoginWithRenown.md +0 -32
  52. package/docs/academy/01-GetStarted/03-ToDoList/02-DefineToDoListDocumentModel.md +0 -86
  53. package/docs/academy/01-GetStarted/03-ToDoList/_category_.json +0 -8
  54. package/docs/academy/01-GetStarted/_category_.json +0 -3
  55. package/docs/academy/02-AdvancedTutorial/01-Create/02-MoreTutorials/_category_.json +0 -8
  56. package/docs/academy/02-AdvancedTutorial/01-Create/02-StandardDocumentModelWorkflow.md +0 -229
  57. package/docs/academy/03-APIReferences/00-PowerhouseCLI.md +0 -40
  58. package/docs/academy/03-APIReferences/01-ReactHooks.md +0 -3
  59. package/docs/academy/03-APIReferences/02-ReactorUsage.md +0 -1
  60. package/docs/academy/07-Glossary.md +0 -53
  61. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/DocumentModelHeader.png +0 -0
  62. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/DocumentModelOperations.png +0 -0
  63. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/OpenDocumentModelEditor.gif +0 -0
  64. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/completeEditor.png +0 -0
  65. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/connectApp.gif +0 -0
  66. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/form.png +0 -0
  67. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/mytodolist.gif +0 -0
  68. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/reducers.png +0 -0
  69. /package/docs/academy/01-GetStarted/{03-ToDoList/images → images}/vscode.png +0 -0
  70. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/01-BuildingBeautifulDocumentEditors.md +0 -0
  71. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/02-RevisionHistoryTimeline.md +0 -0
  72. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/_category_.json +0 -0
  73. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/images/committer-address-popup.png +0 -0
  74. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/images/revision-hash-popup.png +0 -0
  75. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/images/revision-history-list.png +0 -0
  76. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/07-DocumentTools/images/signature-details-popup.png +0 -0
  77. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/01-RenownAuthenticationFlow.md +0 -0
  78. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/02-Authorization.md +0 -0
  79. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/_category_.json +0 -0
  80. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/images/ConnectAddress.png +0 -0
  81. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/images/LoginComplete.png +0 -0
  82. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/images/OperationsHistory.png +0 -0
  83. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/images/RenownLogin.png +0 -0
  84. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/08-Authorization/images/ReturnToConnect.png +0 -0
  85. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/_category_.json +0 -0
  86. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/images/CreateDrive.png +0 -0
  87. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/images/CreateNewDrive.png +0 -0
  88. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/03-BuildingUserExperiences/images/mytodolist.gif +0 -0
  89. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/03-WorkingWithSubgraphs/02-GraphQLAndSubgraphs.mdx +0 -0
  90. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/03-WorkingWithSubgraphs/03-WorkingWithSubgraphs.md +0 -0
  91. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/03-WorkingWithSubgraphs/_category_.json +0 -0
  92. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/04-analytics-processor.md +0 -0
  93. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/01-SetupBuilderEnvironment.md +0 -0
  94. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/02-CreateNewPowerhouseProject.md +0 -0
  95. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/03-GenerateAnAnalyticsProcessor.md +0 -0
  96. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/04-UpdateAnalyticsProcessor.md +0 -0
  97. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/_category_.json +0 -0
  98. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/images/Create-SPV.gif +0 -0
  99. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/images/Create-a-new-asset.png +0 -0
  100. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/images/Create-a-transaction.gif +0 -0
  101. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/images/Transaction-table.png +0 -0
  102. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/images/create-a-new-RWA-document.gif +0 -0
  103. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/05-AnalyticsProcessorTutorial/images/granularity.png +0 -0
  104. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/GraphQL References/QueryingADocumentWithGraphQL.md +0 -0
  105. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/GraphQL References/rwa-reports/listener-raw.png +0 -0
  106. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/GraphQL References/rwa-reports/raw-reports1.png +0 -0
  107. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/GraphQL References/rwa-reports/raw-reports2.png +0 -0
  108. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/GraphQL References/rwa-reports/rwaRegister.png +0 -0
  109. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/apse.png +0 -0
  110. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/best-practices.md +0 -0
  111. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/filter.png +0 -0
  112. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/filteroptions.png +0 -0
  113. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/graphql/integration.md +0 -0
  114. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/dbs.png +0 -0
  115. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/high-level.jpg +0 -0
  116. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/indexeddb.png +0 -0
  117. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/libs-core.jpg +0 -0
  118. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/libs.jpg +0 -0
  119. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/lod.jpg +0 -0
  120. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/logo.png +0 -0
  121. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/navbar.png +0 -0
  122. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/overview-1.jpg +0 -0
  123. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/overview-2.jpg +0 -0
  124. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/overview-3.jpg +0 -0
  125. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/overview-4.jpg +0 -0
  126. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/overview-5.jpg +0 -0
  127. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/overview-6.jpg +0 -0
  128. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/paths-1.jpg +0 -0
  129. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/images/paths-2.jpg +0 -0
  130. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/intro.md +0 -0
  131. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/benchmarks.md +0 -0
  132. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/browser.md +0 -0
  133. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/compatibility.md +0 -0
  134. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/index.md +0 -0
  135. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/memory.md +0 -0
  136. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/pg.md +0 -0
  137. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/schema.md +0 -0
  138. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/typescript/utilities.md +0 -0
  139. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/use-cases/index.md +0 -0
  140. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/use-cases/maker.md +0 -0
  141. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/06-Analytics Engine/use-cases/processors.md +0 -0
  142. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/_category_.json +0 -0
  143. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/images/OperationHistory.png +0 -0
  144. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/images/OperationsQuery.png +0 -0
  145. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/images/QueryDocumentID.png +0 -0
  146. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/04-WorkWithData/images/SwitchboardButton.png +0 -0
  147. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/00-IntegrateInAFront-End +0 -0
  148. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/01-IntroducingFusion +0 -0
  149. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/02-PublishYourProject.md +0 -0
  150. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/04-GraphQLNamespacing +0 -0
  151. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/05-LaunchYourBackend.md +0 -0
  152. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/06-LaunchYourFrontend.md +0 -0
  153. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/_category_.json +0 -0
  154. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/images/SSHConnection.png +0 -0
  155. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/images/homedesign.png +0 -0
  156. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/images/keyconcepts.png +0 -0
  157. /package/docs/academy/{02-AdvancedTutorial → 02-MasteryTrack}/05-Launch/images/tutorialschema.png +0 -0
  158. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/01-SetupBuilderEnvironment.md +0 -0
  159. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/02-CreateNewPowerhouseProject.md +0 -0
  160. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/03-DefineChatroomDocumentModel.md +0 -0
  161. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/04-ImplementOperationReducers.md +0 -0
  162. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/05-ImplementChatroomEditor.md +0 -0
  163. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/06-LaunchALocalReactor.md +0 -0
  164. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/_category_.json +0 -0
  165. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/image-1.png +0 -0
  166. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/image-2.png +0 -0
  167. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/image-3.png +0 -0
  168. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/image-4.png +0 -0
  169. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/image-5.png +0 -0
  170. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/image.png +0 -0
  171. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/images/ChatRoomConnectApp.gif +0 -0
  172. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/images/ChatRoomTest.gif +0 -0
  173. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/images/completeEditor.png +0 -0
  174. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/images/form.png +0 -0
  175. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/images/reducers.png +0 -0
  176. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials → 03-ExampleUsecases}/Chatroom/images/vscode.png +0 -0
  177. /package/docs/academy/{03-APIReferences → 04-APIReferences}/_category_.json +0 -0
  178. /package/docs/academy/05-Architecture/05-DocumentModelTheory/{01-WhatIsADocumentModel.md → 01-WhatIsADocumentModel} +0 -0
  179. /package/docs/academy/05-Architecture/05-DocumentModelTheory/{02-DAOandDocumentsModelsQ+A.md → 02-DAOandDocumentsModelsQ+A} +0 -0
  180. /package/docs/academy/05-Architecture/05-DocumentModelTheory/{02-domain-modeling.md → 02-domain-modeling} +0 -0
  181. /package/docs/academy/05-Architecture/05-DocumentModelTheory/{03-BenefitsOfDocumentModels.md → 03-BenefitsOfDocumentModels} +0 -0
  182. /package/docs/academy/{02-AdvancedTutorial/01-Create/02-MoreTutorials/04-UtilitiesAndTips.md → 05-Architecture/05-DocumentModelTheory/04-UtilitiesAndTips} +0 -0
  183. /package/docs/academy/05-Architecture/05-DocumentModelTheory/{05-best-practices.md → 05-best-practices} +0 -0
  184. /package/docs/academy/{04-ComponentLibrary/00-StorybookLink → 06-ComponentLibrary/01-StorybookLink} +0 -0
  185. /package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/03-Scalar-Components/02-input-field.mdx +0 -0
  186. /package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/04-Complex-Components/01-sidebar.mdx +0 -0
  187. /package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/05-Layout-Components/01-test-toupdate.mdx +0 -0
  188. /package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/06-Fragments/01-test-toupdate.mdx +0 -0
  189. /package/docs/academy/{04-ComponentLibrary → 06-ComponentLibrary}/_category_.json +0 -0
@@ -0,0 +1,16 @@
1
+ # React Hooks (WIP)
2
+
3
+ ### Hook Name and Signature
4
+ The name of the hook and its TypeScript (or JavaScript) signature.
5
+ ### Description
6
+ A brief explanation of what the hook does and when to use it.
7
+ ### Usage Example
8
+ A code snippet showing how to use the hook in a real-world scenario.
9
+ ### Parameters
10
+ A table or list describing each parameter, its type, and its purpose.
11
+ ### Return Value
12
+ A description (and sometimes a table) of what the hook returns.
13
+ ### Notes / Caveats
14
+ Any important details, gotchas, or best practices.
15
+ ### Related Hooks
16
+ Links to other relevant hooks or documentation.
@@ -0,0 +1 @@
1
+ # Reactor API (WIP)
@@ -0,0 +1,64 @@
1
+ # Configuration (WIP)
2
+
3
+ This section describes the configuration options and feature flags available in the application. These settings allow you to customize the behavior of the app for your environment.
4
+
5
+ ## Table of Contents
6
+
7
+ 1. [Introduction](#introduction)
8
+ 2. [How to Configure](#how-to-configure)
9
+ 3. [Configuration Options](#configuration-options)
10
+ 4. [Feature Flags](#feature-flags)
11
+ 5. [Best Practices](#best-practices)
12
+
13
+ ---
14
+
15
+ ## Introduction
16
+
17
+ Configuration options and feature flags allow administrators and developers to enable, disable, or customize features in the application. They can be set via environment variables, configuration files, or the admin dashboard.
18
+
19
+ ## How to Configure
20
+
21
+ - **Environment Variables:** Set in your `.env` file or deployment environment.
22
+ - **Config File:** Edit `config.json` in the root directory.
23
+ - **Admin UI:** Navigate to Settings > Advanced.
24
+
25
+ Changes may require a server restart to take effect.
26
+
27
+ ## Configuration Options
28
+
29
+ | Name | Description | Default | Possible Values | Example |
30
+ |---------------------|------------------------------------|---------|---------------------|------------------------|
31
+ | `APP_PORT` | Port the server listens on | `3000` | Any valid port | `APP_PORT=8080` |
32
+ | `LOG_LEVEL` | Logging verbosity | `info` | `debug`, `info`, `warn`, `error` | `LOG_LEVEL=debug` |
33
+ | `ENABLE_SIGNUP` | Allow new user registrations | `true` | `true`, `false` | `ENABLE_SIGNUP=false` |
34
+
35
+ ## Feature Flags
36
+
37
+ | Flag Name | Description | Default | Example |
38
+ |---------------------|------------------------------------|---------|---------------------|
39
+ | `FEATURE_BETA_UI` | Enable the new beta user interface | `false` | `FEATURE_BETA_UI=true` |
40
+ | `FEATURE_XYZ` | Enable experimental XYZ feature | `false` | `FEATURE_XYZ=true` |
41
+
42
+ ## Best Practices
43
+
44
+ - Only enable experimental features in staging environments.
45
+ - Document any changes to configuration for your team.
46
+ - Review security implications before enabling/disabling features.
47
+
48
+ ---
49
+
50
+ ###Introduction
51
+ What are configuration options/toggles/flags?
52
+ How are they set (e.g., environment variables, config files, admin UI)?
53
+ ###List of Options
54
+ Name
55
+ Description
56
+ Default value
57
+ Possible values
58
+ Example usage
59
+ (Optional) Who should use it (admin, developer, etc.)
60
+ ###How to Change
61
+ Where/how to set them (UI, .env, config file, etc.)
62
+ When changes take effect (immediately, after restart, etc.)
63
+ ###Best Practices / Warnings
64
+ Security, performance, or stability notes
@@ -1,8 +1,8 @@
1
- # Document-Engineering System
1
+ # Document-Engineering
2
2
 
3
- The reusable components are a set of of front-end components based on graphQL scalars.
3
+ The reusable components in the Document-Engineering design system are a set of of front-end components based on graphQL scalars.
4
4
  Powerhouse also has a set of custom scalars that are not part of the graphQL standard but are specific to the web3 ecosystem.
5
- These components are offered through the **Powerhouse document-engineering system** with the help of storybook & the Academy documentation.
5
+ These components are offered through the **Powerhouse Document-Engineering design system** with the help of storybook & the Academy documentation.
6
6
 
7
7
  It provides a collection of pre-built, reusable UI components designed for consistency and efficiency across Powerhouse applications and editors. Think of it as a toolkit of standard UI elements like buttons, inputs, and checkboxes with many of these components based on graphql scalars.
8
8
 
@@ -51,7 +51,7 @@ We use Storybook as an interactive catalog for our design system components. It
51
51
 
52
52
  ## Implementing a Component
53
53
 
54
- Let's walk through the typical workflow for using a component from the document-engineering system, using the `Checkbox` from the [To-do List editor](/docs/academy/GetStarted/ToDoList/BuildToDoListEditor).
54
+ Let's walk through the typical workflow for using a component from the document-engineering system, using the `Checkbox` from the [To-do List editor](/academy/GetStarted/BuildToDoListEditor).
55
55
 
56
56
  1. **Identify the Need:** While building your feature (e.g., the To-do List editor in `editor.tsx`), you determine the need for a standard UI element, like a checkbox.
57
57
  2. **Consult the Resuable Components in Academy or in Storybook:**
@@ -61,11 +61,11 @@ Let's walk through the typical workflow for using a component from the document-
61
61
  * Examine the "Usage" snippet and the **Props table** to understand the basic implementation and available configuration options (`label`, `value`, `onChange`, etc.).
62
62
  3. **Import the Component:** In your code editor, open the relevant file (e.g., `editors/to-do-list/editor.tsx`). Add an import statement at the top to bring the component into your file's scope:
63
63
  ```typescript
64
- import { Checkbox } from '@powerhousedao/design-system/scalars';
64
+ import { Checkbox } from '@powerhousedao/document-engineering/scalars';
65
65
  // Or import other components as needed:
66
- // import { Checkbox, InputField, Button } from '@powerhousedao/design-system/scalars';
66
+ // import { Checkbox, InputField, Button } from '@powerhousedao/document-engineering/scalars';
67
67
  ```
68
- This line instructs the build process to locate the `Checkbox` component within the installed `@powerhousedao/design-system/scalars` package and make it available for use.
68
+ This line instructs the build process to locate the `Checkbox` component within the installed `@powerhousedao/document-engineering/scalars` package and make it available for use.
69
69
  4. **Use and Configure the Component:** Place the component tag in your JSX where needed. Use the information from Storybook (usage snippet and props table) as a guide, but adapt the props to your specific requirements within `editor.tsx`:
70
70
  ```typescript
71
71
  // Example from the To-do List Editor:
@@ -87,7 +87,7 @@ Let's walk through the typical workflow for using a component from the document-
87
87
 
88
88
  **Storybook vs. Source Code:**
89
89
 
90
- Storybook serves as essential documentation and a usage guide. Our developers write Storybook "stories" to demonstrate components and document their common props. However, the **ultimate source of truth** for a component's capabilities is its actual source code (e.g., the `.tsx` file within the `@powerhousedao/design-system/scalars` package).
90
+ Storybook serves as essential documentation and a usage guide. Our developers write Storybook "stories" to demonstrate components and document their common props. However, the **ultimate source of truth** for a component's capabilities is its actual source code (e.g., the `.tsx` file within the `@powerhousedao/document-engineering/scalars` package).
91
91
  While Storybook aims for accuracy, there might occasionally be discrepancies or undocumented props.
92
92
 
93
93
  Please don't hesitate to reach out in our discord channels with any questions.
@@ -23,10 +23,10 @@ type MyType {
23
23
 
24
24
  ## React Component Implementation in the Frontend
25
25
 
26
- All of our reusable components are available in the design system library or package.
26
+ All of our reusable components are available in the Document-Engineering design system library or package.
27
27
  This package comes as a dependency in your project when creating a new document model project.
28
28
  ````
29
- import PHIDField from 'design-system'
29
+ import PHIDField from 'document-engineering'
30
30
  const reactComponent = () => {
31
31
 
32
32
  return (
@@ -61,7 +61,7 @@ Additionally, you'll find various **stories of the components in different state
61
61
  marginBottom: '20px',
62
62
  }}>
63
63
  <iframe
64
- src="https://storybook.powerhouse.academy/iframe.html?id=document-engineering-scalars-phid-field&viewMode=story"
64
+ src="https://storybook.powerhouse.academy/iframe.html?id=scalars-phid-field--readme&viewMode=story"
65
65
  style={{
66
66
  width: '100%',
67
67
  height: '4500px',
@@ -1,6 +1,7 @@
1
1
  # Cookbook
2
2
 
3
3
  ## Powerhouse CLI Recipes
4
+ This section covers recipes related to the `ph-cmd`, the command-line tool for Powerhouse project initialization, code generation, package management, and running local development environments.
4
5
 
5
6
  <details id="installing-ph-cmd">
6
7
  <summary>Installing 'ph-cmd'</summary>
@@ -53,7 +54,7 @@ pnpm install -g ph-cmd@<version>
53
54
  - [Setting up or Resetting the Global Powerhouse Configuration](#setting-up-or-resetting-the-global-powerhouse-configuration)
54
55
 
55
56
  ## Further Reading
56
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
57
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
57
58
  </details>
58
59
 
59
60
  <details id="uninstalling-ph-cmd">
@@ -94,8 +95,8 @@ rm -rf ~/.ph
94
95
  - [Setting up or Resetting the Global Powerhouse Configuration](#setting-up-or-resetting-the-global-powerhouse-configuration)
95
96
 
96
97
  ## Further Reading
97
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
98
- - [Create A New Powerhouse Project](/docs/academy/GetStarted/ToDoList/CreateNewPowerhouseProject)
98
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
99
+ - [Create A New Powerhouse Project](/academy/GetStarted/CreateNewPowerhouseProject)
99
100
  </details>
100
101
 
101
102
  <details id="setting-up-or-resetting-the-global-powerhouse-configuration">
@@ -153,8 +154,8 @@ ph use staging
153
154
  - [Using Different Branches in Powerhouse](#using-different-branches-in-powerhouse)
154
155
 
155
156
  ## Further Reading
156
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
157
- - [GraphQL Schema Best Practices](/docs/academy/AdvancedTutorial/WorkWithData/GraphQLAtPowerhouse)
157
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
158
+ - [GraphQL Schema Best Practices](/academy/MasteryTrack/WorkWithData/GraphQLAtPowerhouse)
158
159
  </details>
159
160
 
160
161
  <details id="using-different-branches-in-powerhouse">
@@ -232,7 +233,7 @@ ph use prod
232
233
  - [Setting up or Resetting the Global Powerhouse Configuration](#setting-up-or-resetting-the-global-powerhouse-configuration)
233
234
 
234
235
  ## Further Reading
235
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
236
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
236
237
  </details>
237
238
 
238
239
  <details id="using-different-package-managers-with-powerhouse">
@@ -331,12 +332,13 @@ ph init --package-manager pnpm
331
332
  - [Setting up or Resetting the Global Powerhouse Configuration](#setting-up-or-resetting-the-global-powerhouse-configuration)
332
333
 
333
334
  ## Further Reading
334
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
335
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
335
336
  - [Yarn Global Installation Guide](https://classic.yarnpkg.com/lang/en/docs/cli/global/)
336
337
  - [Bun Installation Guide](https://bun.sh/docs/installation#how-to-add-your-path)
337
338
  </details>
338
339
 
339
340
  ## Powerhouse Project Recipes
341
+ This section focuses on creating, configuring, and managing Powerhouse projects, which are collections of document models, editors, and other resources.
340
342
 
341
343
  <details id="initializing-a-new-project-and-document-model">
342
344
  <summary>Initializing a New Project & Document Model</summary>
@@ -402,8 +404,8 @@ In the "New Document" section at the bottom of the page, click the `DocumentMode
402
404
  - Implementing Document Model Reducers (Details to be added)
403
405
 
404
406
  ## Further Reading
405
- - [Domain Modeling Guide](/docs/domain-modeling)
406
- - [GraphQL Schema Best Practices](/docs/academy/AdvancedTutorial/WorkWithData/GraphQLAtPowerhouse)
407
+ - [Domain Modeling Guide](/domain-modeling)
408
+ - [GraphQL Schema Best Practices](/academy/MasteryTrack/WorkWithData/GraphQLAtPowerhouse)
407
409
  </details>
408
410
 
409
411
  <details id="generating-reducers-from-a-document-model-file">
@@ -450,7 +452,7 @@ The command will output the generated reducer scaffolding code in the designated
450
452
  - Generating a Document Editor
451
453
 
452
454
  ## Further Reading
453
- - [Domain Modeling Guide](/docs/domain-modeling)
455
+ - [Domain Modeling Guide](/domain-modeling)
454
456
 
455
457
  </details>
456
458
 
@@ -543,12 +545,13 @@ You might encounter a browser warning about the self-signed certificate; you may
543
545
  - [Initializing a New Project & Document Model](#initializing-a-new-project-and-document-model)
544
546
 
545
547
  ## Further Reading
546
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
547
- - [GraphQL Schema Best Practices](/docs/academy/AdvancedTutorial/WorkWithData/GraphQLAtPowerhouse)
548
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
549
+ - [GraphQL Schema Best Practices](/academy/MasteryTrack/WorkWithData/GraphQLAtPowerhouse)
548
550
  </details>
549
551
 
550
552
 
551
553
  ## Document & Drive Editor recipes
554
+ This section provides guidance on generating and customizing editors for Document Models and custom interfaces for Drives.
552
555
 
553
556
  <details id="generating-a-document-editor">
554
557
  <summary>Generating a Document Editor</summary>
@@ -591,7 +594,7 @@ ph generate --editor <ModelName> --document-types <docType>
591
594
  - [Generating a Custom Drive Explorer](#generating-a-custom-drive-explorer)
592
595
 
593
596
  ## Further Reading
594
- - [Build a Todo-list Editor](/docs/academy/GetStarted/ToDoList/BuildToDoListEditor)
597
+ - [Build a Todo-list Editor](/academy/GetStarted/BuildToDoListEditor)
595
598
  </details>
596
599
 
597
600
  <details id="generating-a-custom-drive-explorer">
@@ -633,7 +636,7 @@ ph generate --drive-editor <drive-app-name>
633
636
  - [Generating a Document Editor](#generating-a-document-editor)
634
637
 
635
638
  ## Further Reading
636
- - [Build a Drive-Explorer](/docs/academy/AdvancedTutorial/BuildingUserExperiences/BuildingADriveExplorer)
639
+ - [Build a Drive-Explorer](/academy/MasteryTrack/BuildingUserExperiences/BuildingADriveExplorer)
637
640
  </details>
638
641
 
639
642
  <details id="adding-a-new-drive-via-graphql-mutation">
@@ -709,17 +712,18 @@ Use the constructed URL to add or access the drive in your Connect environment.
709
712
  - The drive can be managed or accessed using the generated URL.
710
713
 
711
714
  ## Related Recipes
712
- - [Configuring Drives](/docs/academy/AdvancedTutorial/BuildingUserExperiences/ConfiguringDrives)
715
+ - [Configuring Drives](/academy/MasteryTrack/BuildingUserExperiences/ConfiguringDrives)
713
716
  - [Initializing a New Project & Document Model](#initializing-a-new-project-and-document-model)
714
717
 
715
718
  ## Further Reading
716
719
  - [GraphQL Playground](https://www.apollographql.com/docs/apollo-server/testing/graphql-playground/)
717
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
720
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
718
721
 
719
722
  </details>
720
723
 
721
724
 
722
725
  ## Reactor Recipes
726
+ Learn how to manage the Powerhouse Reactor, the local service for processing document model operations and state.
723
727
 
724
728
  <details id="starting-the-reactor">
725
729
  <summary>Starting the Reactor</summary>
@@ -767,6 +771,7 @@ ph reactor
767
771
  </details>
768
772
 
769
773
  ## Package Development Recipes
774
+ These recipes guide you through creating, installing, and managing Powerhouse Packages, which are reusable collections of document models and editors.
770
775
 
771
776
  <details id="installing-a-custom-powerhouse-package">
772
777
  <summary>Installing a Custom Powerhouse Package</summary>
@@ -917,12 +922,13 @@ You need to understand and manage different types of dependencies in your Powerh
917
922
  - [Setting up or Resetting the Global Powerhouse Configuration](#setting-up-or-resetting-the-global-powerhouse-configuration)
918
923
 
919
924
  ## Further Reading
920
- - [Powerhouse Builder Tools](/docs/academy/AdvancedTutorial/Create/BuilderTools)
921
- - [GraphQL Schema Best Practices](/docs/academy/AdvancedTutorial/WorkWithData/GraphQLAtPowerhouse)
925
+ - [Powerhouse Builder Tools](/academy/MasteryTrack/BuilderEnvironment/BuilderTools)
926
+ - [GraphQL Schema Best Practices](/academy/MasteryTrack/WorkWithData/GraphQLAtPowerhouse)
922
927
 
923
928
  </details>
924
929
 
925
930
  ## Data Synchronisation Recipes
931
+ This section helps troubleshoot and understand data synchronization within the Powerhouse ecosystem, including interactions between different services and components.
926
932
 
927
933
  <details id="troubleshooting-document-syncing">
928
934
  <summary>Troubleshooting Document Syncing: Supergraph vs. Drive Endpoints</summary>
@@ -0,0 +1,82 @@
1
+ # Glossary
2
+
3
+ ## General Terms
4
+ - **Powerhouse** – A network organization that provides open-source software and services to support decentralized operations for other network organizations.
5
+ - **Scalable Network Organization (SNO)** – A network organization structured according to the Powerhouse framework, designed for sustainable and scalable growth.
6
+ - **Powerhouse Ecosystem** – The overall environment of Powerhouse tools, applications (like Connect), concepts (document models, packages), and services.
7
+
8
+ ## Technology & Framework
9
+ - **CQRS (Command Query Responsibility Segregation)** – A pattern that separates read and write operations to improve scalability.
10
+ - **Event Sourcing** – A method of storing system state as a sequence of immutable events rather than modifying a single record.
11
+
12
+ ## Software Components
13
+ - **Reactor** – A storage node for Powerhouse documents and files with multiple storage adapters (local, cloud, decentralized).
14
+ - **Powerhouse Switchboard** – A scalable API service that aggregates and processes document data.
15
+ - **Powerhouse Fusion** – A platform front-end that hosts the public marketplace for SNO interactions.
16
+ - **Powerhouse Renown** – A decentralized authentication system managing contributor reputation.
17
+ - **Powerhouse Academy** – A training platform for onboarding and upskilling SNO contributors.
18
+ - **Connect** – The contributor's public or private workspace, serving as the entry point for individual contributors to install apps and packages for specific business solutions.
19
+ - **Powergrid** – A decentralized network of reactors that sync with each other.
20
+ - **ph-cmd (Powerhouse CLI)** – The command-line tool for Powerhouse project initialization, code generation, package management, and running local development environments (Connect Studio).
21
+ - **Connect App (Connect Studio)** – The primary Powerhouse application for defining document models, building/testing editors (in Studio mode), and collaborating on documents.
22
+ - **Document Tools** – Built-in features within Powerhouse applications (e.g., Connect) that assist with document management, inspection, and interaction, such as Operations History.
23
+ - **Operations History** – A Document Tool in Connect providing a chronological, immutable log of all operations on a document for traceability.
24
+ - **Studio mode** – The local development mode of the Connect App (`ph connect`), for real-time document model definition, editor building, and testing.
25
+ - **Renown (Login Flow)** – The Powerhouse decentralized login process using an Ethereum wallet signature to generate/retrieve a user's DID for secure, pseudonymous actions.
26
+ - **Powerhouse Switchboard (Verifier Role)** – A function of Powerhouse Switchboard that validates DIDs and credentials for operations submitted via Connect, ensuring they are authorized.
27
+
28
+ ## Development & Data Modeling
29
+ - **Action Creators (for Document Operations)** – Auto-generated helper functions creating structured "action" objects for dispatching operations to a document model's reducer.
30
+ - **Actions (Document Actions)** – Typed objects representing an intent to change a document's state, dispatched to reducers, containing an operation type and input data.
31
+ - **API Integration (for Document Models)** – The capability of Document Models to connect with Switchboard API or external APIs, facilitating data exchange between Powerhouse applications and other systems.
32
+ - **Boilerplate (Powerhouse Project)** – The `ph init` command's initial project structure, providing a standard starting point for new Powerhouse packages.
33
+ - **Data Analysis (with Document Models)** – Leveraging the structured data within Document Models, often via read models, to extract insights, generate reports, and perform analytics on operational and historical data.
34
+ - **Dispatch (in Document Models)** – The act of sending an action (representing an operation) to a document model's reducer to trigger a state update.
35
+ - **Document Model Editors** – An interface or UI to a document model that allows users to create and modify the data captured by the document models.
36
+ - **Document Model Specification** – The formal definition of a document model (state, operations), created in Connect Studio (using GraphQL SDL) and exported (e.g., `.phdm.zip`) for code generation.
37
+ - **Document Models** – Structured data models that define how Powerhouse documents store and process information.
38
+ - **Document State** – The current data held by a document instance, structured according to its Document Model.
39
+ - **Document Type** – A unique string identifier (e.g., `powerhouse/todolist`) for a Document Model, used by host apps to select the correct editor/logic.
40
+ - **Drive** – A logical container in Powerhouse for storing, organizing, and managing collections of documents.
41
+ - **Drive App (Custom Drive Explorer)** – A UI application, often custom, providing tailored views and interactions with documents in a Drive.
42
+ - **Event History (Append-Only Log)** – An immutable, append-only log where every operation applied to a Powerhouse document is stored as an event. It provides a transparent audit trail and enables features like time travel debugging and state reconstruction.
43
+ - **GraphQL Scalars** – Data types used in Powerhouse document modeling (e.g., `String`, `Int`, `Currency`, `OID` for unique object IDs).
44
+ - **GraphQL Schema Definition Language (SDL) (for Document Models)** – Language used in Connect Studio to define a Document Model's data structure (state) and operations.
45
+ - **Host Applications** – Applications that use the Powerhouse framework to create and manage documents and data.
46
+ - **Input Types (GraphQL for Document Operations)** – Custom data structures in SDL detailing parameters for document operations (e.g., `AddTodoItemInput`).
47
+ - **Model-Driven Development (MDD)** – A software approach that uses high-level models to generate system logic and configurations.
48
+ - **Modules (in Document Model Editor)** – An organizational feature in Connect Studio's model editor for grouping related operations.
49
+ - **Operations (Document Operations)** – Named commands (e.g., `ADD_TODO_ITEM`) in a Document Model representing all ways to change its state, forming its event log.
50
+ - **Powerhouse Document (`.phd` file)** – Standard file extension for an exported Powerhouse document instance, containing its data and history.
51
+ - **Powerhouse Package** – A collection of document models, document model editors, and other resources that are published as a package and can be used in any of the host applications.
52
+ - **Powerhouse Project** – A collection of document models, document model editors, and other resources being build in Connect Studio.
53
+ - **Pure Functions (for Reducers)** – Principle that document model reducers must be pure (output depends only on input, no side effects) for predictable state transitions.
54
+ - **Reducers (Document Model Reducers)** – Functions implementing a Document Model's logic; for each operation, a reducer takes current state and an action, returning new state.
55
+ - **Replay Events** – The process of re-applying recorded events from a document's Event History to reconstruct or restore its state, a core capability of Event Sourcing.
56
+ - **Scalars (Design System Components)** – Reusable UI building blocks (e.g., `Checkbox`, `InputField`) from `@powerhousedao/document-engineering/scalars`, used in editors (distinct from GraphQL scalars).
57
+ - **State (Global State in Document Model)** – The primary, persisted, shared data of a document instance, managed by its reducers.
58
+ - **State (Local State in Editor)** – Temporary, UI-specific data within an editor (e.g., form inputs), not persisted in the global document state.
59
+ - **State Schema** – The component of a Document Model that defines the structure of the document, including its fields, data types, and validation rules, typically using a GraphQL-like syntax. It serves as a blueprint for how data is stored and validated.
60
+ - **Storybook (for Powerhouse Design System)** – Interactive environment for browsing and testing Powerhouse Design System UI components.
61
+ - **Strands** – A single synchronization channel that connects exactly one unit of synchronization to another, with all four parameters (drive_url, doc_id, scope, branch) set to fixed values. This allows synchronization between two distinct points of instances of a document or document drive.
62
+ - **Tailwind CSS (in Connect Studio)** – Utility CSS framework integrated into Connect Studio for styling document editors.
63
+ - **Time Travel Debugging** – A debugging technique, enabled by a document's Event History, that allows developers to reconstruct and inspect past states of the document by replaying events up to a specific point in time.
64
+ - **Type Safety (in Document Modeling)** – Powerhouse's use of auto-generated TypeScript definitions from a model's schema (SDL) to prevent data type errors in development.
65
+ - **Version Control (for Document Models)** – A planned feature for Document Models in Connect that will allow tracking of changes, comparison of different versions, and maintenance of data integrity over time, similar to version control systems for source code.
66
+
67
+ ## AI & Automation
68
+ - **AI Assistants** – AI-powered contributors paired with human contributors to automate tasks and improve productivity.
69
+ - **AI Contributor Modes** – Configurable states that determine the AI assistant's behavior, permissions, and task focus.
70
+ - **Task Automation & Scaling** – The use of AI to streamline repetitive tasks, improve communications, and enhance decision-making.
71
+ - **Decentralized Identifier (DID)** – A user-controlled, globally unique ID, used in Renown to link a user's blockchain key to actions pseudonymously.
72
+ - **Immutable Updates** – A principle where data is never altered in place; operations create new data versions, vital for Powerhouse's event sourcing.
73
+ - **Type Safety (in Document Modeling)** – Powerhouse's use of auto-generated TypeScript definitions from a model's schema (SDL) to prevent data type errors in development.
74
+
75
+ ## Organizational Concepts
76
+ - **Ceramic** – A decentralized network for storing verifiable data, used by Powerhouse Renown for secure credential management.
77
+ - **Decentralized Identifier (DID)** – A user-controlled, globally unique ID, used in Renown to link a user's blockchain key to actions pseudonymously.
78
+ - **Event History (Append-Only Log)** – An immutable, append-only log where every operation applied to a Powerhouse document is stored as an event. It provides a transparent audit trail and enables features like time travel debugging and state reconstruction.
79
+ - **Event-Driven Architecture (EDA)** – A software design approach where system flows are determined by events that trigger actions asynchronously.
80
+ - **Immutable Updates** – A principle where data is never altered in place; operations create new data versions, vital for Powerhouse's event sourcing.
81
+ - **Network Organization** – A group of independent contributors and teams working together towards a common purpose, relying on decentralization and resource sharing.
82
+
@@ -37,9 +37,8 @@ const config: Config = {
37
37
  'classic',
38
38
  {
39
39
  docs: {
40
+ routeBasePath: '/',
40
41
  sidebarPath: './sidebars.ts',
41
- // Please change this to your repo.
42
- // Remove this to remove the "edit this page" links.
43
42
  editUrl:
44
43
  'https://github.com/powerhouse-inc/powerhouse-docs/tree/dev',
45
44
  showLastUpdateTime: false,
@@ -81,6 +80,7 @@ const config: Config = {
81
80
  alt: 'My Site Logo',
82
81
  src: 'img/Powerhouse-main.svg',
83
82
  srcDark: 'img/Powerhouse-main-light.svg',
83
+ href: '/',
84
84
  },
85
85
  items: [
86
86
  {
@@ -89,13 +89,6 @@ const config: Config = {
89
89
  position: 'left',
90
90
  label: 'Academy',
91
91
  },
92
- {
93
- type: 'docSidebar',
94
- sidebarId: 'bookofpowerhouseSidebar',
95
- position: 'left',
96
- label: 'Book of Powerhouse',
97
- },
98
- {to: '/blog', label: 'Blog', position: 'left'},
99
92
  {
100
93
  href: 'https://github.com/powerhouse-inc/powerhouse-docs',
101
94
  label: 'GitHub',
@@ -111,23 +104,23 @@ const config: Config = {
111
104
  items: [
112
105
  {
113
106
  label: 'Connect',
114
- to: 'docs/academy/Architecture/PowerhouseArchitecture',
107
+ to: 'academy/Architecture/PowerhouseArchitecture',
115
108
  },
116
109
  {
117
110
  label: 'Reactor',
118
- to: 'docs/academy/Architecture/PowerhouseArchitecture',
111
+ to: 'academy/Architecture/PowerhouseArchitecture',
119
112
  },
120
113
  {
121
114
  label: 'Switchboard',
122
- to: 'docs/academy/Architecture/PowerhouseArchitecture',
115
+ to: 'academy/Architecture/PowerhouseArchitecture',
123
116
  },
124
117
  {
125
118
  label: 'Renown',
126
- to: 'docs/academy/Architecture/PowerhouseArchitecture',
119
+ to: 'academy/Architecture/PowerhouseArchitecture',
127
120
  },
128
121
  {
129
122
  label: 'FAQ',
130
- to: 'docs/academy/Architecture/PowerhouseArchitecture',
123
+ to: 'academy/Architecture/PowerhouseArchitecture',
131
124
  },
132
125
  {
133
126
  label: "Blog",
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@powerhousedao/academy",
3
- "version": "0.1.0-dev.3",
3
+ "version": "0.1.0-dev.5",
4
4
  "homepage": "https://powerhouse.academy",
5
5
  "dependencies": {
6
6
  "@codesandbox/sandpack-react": "^2.14.4",
7
- "@docusaurus/core": "^3.6.3",
8
- "@docusaurus/preset-classic": "^3.6.3",
9
- "@docusaurus/theme-search-algolia": "^3.7.0",
7
+ "@docusaurus/core": "^3.8.0",
8
+ "@docusaurus/plugin-content-docs": "^3.8.0",
9
+ "@docusaurus/preset-classic": "^3.8.0",
10
+ "@docusaurus/theme-search-algolia": "^3.8.0",
10
11
  "@mdx-js/react": "^3.0.0",
11
12
  "@powerhousedao/design-system": "^1.6.0",
12
13
  "clsx": "^2.0.0",
@@ -15,9 +16,10 @@
15
16
  "react-dom": "^18.0.0"
16
17
  },
17
18
  "devDependencies": {
18
- "@docusaurus/module-type-aliases": "^3.6.3",
19
- "@docusaurus/tsconfig": "^3.6.3",
20
- "@docusaurus/types": "^3.6.3",
19
+ "@docusaurus/module-type-aliases": "^3.8.0",
20
+ "@docusaurus/tsconfig": "^3.8.0",
21
+ "@docusaurus/types": "^3.8.0",
22
+ "tsx": "^4.19.4",
21
23
  "typescript": "^5.7.3"
22
24
  },
23
25
  "browserslist": {
@@ -35,7 +37,7 @@
35
37
  "scripts": {
36
38
  "docusaurus": "docusaurus",
37
39
  "start": "docusaurus serve",
38
- "dev": "docusaurus start",
40
+ "dev": "docusaurus start --no-open",
39
41
  "build": "NODE_OPTIONS=--max_old_space_size=2048 docusaurus build",
40
42
  "swizzle": "docusaurus swizzle",
41
43
  "deploy": "docusaurus deploy",
@@ -44,6 +46,7 @@
44
46
  "write-translations": "docusaurus write-translations",
45
47
  "write-heading-ids": "docusaurus write-heading-ids",
46
48
  "typecheck": "tsc",
49
+ "generate:cli-docs": "tsx ./scripts/generate-combined-cli-docs.ts",
47
50
  "heroku-postbuild": "npm run build"
48
51
  }
49
52
  }
@@ -0,0 +1,80 @@
1
+ import * as fs from "fs";
2
+ import * as path from "path";
3
+ import { fileURLToPath } from "url";
4
+
5
+ /**
6
+ * Generates combined CLI documentation from ph-cli and ph-cmd COMMANDS.md files
7
+ * and injects it into the main 00-PowerhouseCLI.md documentation file.
8
+ */
9
+ async function generateCombinedCliDocs() {
10
+ try {
11
+ const __filename = fileURLToPath(import.meta.url);
12
+ const __dirname = path.dirname(__filename);
13
+
14
+ // Define paths
15
+ const academyDocsDir = path.resolve(__dirname, "..", "docs", "academy", "04-APIReferences");
16
+ const targetDocFile = path.join(academyDocsDir, "00-PowerhouseCLI.md");
17
+
18
+ const phCliCommandsPath = path.resolve(__dirname, "..", "..", "..", "clis", "ph-cli", "COMMANDS.md");
19
+ const phCmdCommandsPath = path.resolve(__dirname, "..", "..", "..", "clis", "ph-cmd", "COMMANDS.md");
20
+
21
+ // Read COMMANDS.md files
22
+ const phCliCommandsContent = fs.readFileSync(phCliCommandsPath, "utf8");
23
+ const phCmdCommandsContent = fs.readFileSync(phCmdCommandsPath, "utf8");
24
+
25
+ // Extract content after "## Table of Contents"
26
+ const extractCommands = (content: string, cliName: string): string => {
27
+ const tocHeader = "## Table of Contents";
28
+ const tocIndex = content.indexOf(tocHeader);
29
+ if (tocIndex === -1) {
30
+ console.warn(`Warning: "## Table of Contents" not found in ${cliName} COMMANDS.md. Including entire file.`);
31
+ return content;
32
+ }
33
+ let commandsSection = content.substring(tocIndex + tocHeader.length).trim();
34
+
35
+ // Remove the auto-generation footer
36
+ const footerRegex = /---\\n\\n\\\*This document was automatically generated from the help text in the codebase\\\.\\\*\\n?$/m;
37
+ commandsSection = commandsSection.replace(footerRegex, "").trim();
38
+ return commandsSection;
39
+ };
40
+
41
+ const phCliDocs = extractCommands(phCliCommandsContent, "ph-cli");
42
+ const phCmdDocs = extractCommands(phCmdCommandsContent, "ph-cmd");
43
+
44
+ // Prepare the combined markdown
45
+ let combinedDocs = `### ph-cmd Commands\\n\\n${phCmdDocs}\\n\\n### ph-cli Commands\\n\\n${phCliDocs}`;
46
+
47
+ // Read the target documentation file
48
+ let targetDocContent = fs.readFileSync(targetDocFile, "utf8");
49
+
50
+ // Replace the placeholder with the combined docs
51
+ const startPlaceholder = "<!-- AUTO-GENERATED-CLI-COMMANDS-START -->";
52
+ const endPlaceholder = "<!-- AUTO-GENERATED-CLI-COMMANDS-END -->";
53
+ const startIndex = targetDocContent.indexOf(startPlaceholder);
54
+ const endIndex = targetDocContent.indexOf(endPlaceholder);
55
+
56
+ if (startIndex === -1 || endIndex === -1) {
57
+ console.error(`Error: Placeholders not found in ${targetDocFile}. Please ensure the file contains:\\n${startPlaceholder}\\n...\\n${endPlaceholder}`);
58
+ process.exit(1);
59
+ }
60
+
61
+ targetDocContent =
62
+ targetDocContent.substring(0, startIndex + startPlaceholder.length) +
63
+ "\\n<!-- This content is automatically generated. Do not edit directly. -->\\n" +
64
+ combinedDocs +
65
+ "\\n" +
66
+ targetDocContent.substring(endIndex);
67
+
68
+ // Write the updated content back to the target file
69
+ fs.writeFileSync(targetDocFile, targetDocContent);
70
+
71
+ console.log(`✅ Combined CLI documentation has been generated at ${targetDocFile}`);
72
+
73
+ } catch (error) {
74
+ console.error("Failed to generate combined CLI documentation:", error);
75
+ process.exit(1);
76
+ }
77
+ }
78
+
79
+ // Run the script
80
+ generateCombinedCliDocs();