@powerhousedao/academy 4.1.0-staging.1 → 5.0.0-staging.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +1 -1
- package/CHANGELOG.md +127 -1
- package/README.md +3 -3
- package/babel.config.js +1 -1
- package/blog/BeyondCommunication-ABlueprintForDevelopment.md +25 -24
- package/blog/TheChallengeOfChange.md +21 -21
- package/docs/academy/01-GetStarted/00-ExploreDemoPackage.mdx +61 -24
- package/docs/academy/01-GetStarted/01-CreateNewPowerhouseProject.md +21 -12
- package/docs/academy/01-GetStarted/02-DefineToDoListDocumentModel.md +24 -19
- package/docs/academy/01-GetStarted/03-ImplementOperationReducers.md +44 -41
- package/docs/academy/01-GetStarted/04-BuildToDoListEditor.md +10 -10
- package/docs/academy/01-GetStarted/05-SpecDrivenAI.md +143 -0
- package/docs/academy/01-GetStarted/home.mdx +185 -90
- package/docs/academy/01-GetStarted/styles.module.css +5 -5
- package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/01-Prerequisites.md +46 -18
- package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/02-StandardDocumentModelWorkflow.md +118 -68
- package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/03-BuilderTools.md +75 -33
- package/docs/academy/02-MasteryTrack/01-BuilderEnvironment/_category_.json +6 -6
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/01-WhatIsADocumentModel.md +30 -21
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/02-SpecifyTheStateSchema.md +41 -37
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/03-SpecifyDocumentOperations.md +29 -25
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/04-UseTheDocumentModelGenerator.md +36 -37
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/05-ImplementDocumentReducers.md +128 -109
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/06-ImplementDocumentModelTests.md +95 -86
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/07-ExampleToDoListRepository.md +7 -9
- package/docs/academy/02-MasteryTrack/02-DocumentModelCreation/_category_.json +6 -6
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/01-BuildingDocumentEditors.md +65 -47
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/02-ConfiguringDrives.md +77 -62
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/03-BuildingADriveExplorer.md +360 -349
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/00-DocumentToolbar.mdx +16 -10
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/01-OperationHistory.md +10 -7
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/02-RevisionHistoryTimeline.md +26 -11
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/06-DocumentTools/_category_.json +6 -6
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-Authorization/01-RenownAuthenticationFlow.md +14 -7
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-Authorization/02-Authorization.md +0 -1
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/07-Authorization/_category_.json +5 -5
- package/docs/academy/02-MasteryTrack/03-BuildingUserExperiences/_category_.json +1 -1
- package/docs/academy/02-MasteryTrack/04-WorkWithData/01-GraphQLAtPowerhouse.md +45 -33
- package/docs/academy/02-MasteryTrack/04-WorkWithData/02-UsingTheAPI.mdx +61 -18
- package/docs/academy/02-MasteryTrack/04-WorkWithData/03-UsingSubgraphs.md +50 -54
- package/docs/academy/02-MasteryTrack/04-WorkWithData/04-analytics-processor.md +126 -110
- package/docs/academy/02-MasteryTrack/04-WorkWithData/05-RelationalDbProcessor.md +75 -45
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/GraphQL References/QueryingADocumentWithGraphQL.md +23 -21
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/best-practices.md +9 -9
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/graphql/index.md +11 -23
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/graphql/integration.md +25 -9
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/intro.md +10 -10
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/benchmarks.md +1 -1
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/index.md +16 -11
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/memory.md +6 -5
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/schema.md +2 -2
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/typescript/utilities.md +7 -5
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/use-cases/maker.md +32 -58
- package/docs/academy/02-MasteryTrack/04-WorkWithData/06-Analytics Engine/use-cases/processors.md +1 -1
- package/docs/academy/02-MasteryTrack/04-WorkWithData/07-drive-analytics.md +105 -71
- package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_01-SetupBuilderEnvironment.md +22 -0
- package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_02-CreateNewPowerhouseProject.md +9 -8
- package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_03-GenerateAnAnalyticsProcessor.md +28 -32
- package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_04-UpdateAnalyticsProcessor.md +25 -26
- package/docs/academy/02-MasteryTrack/04-WorkWithData/_ARCHIVE-AnalyticsProcessorTutorial/_category_.json +1 -1
- package/docs/academy/02-MasteryTrack/04-WorkWithData/_category_.json +7 -7
- package/docs/academy/02-MasteryTrack/05-Launch/01-IntroductionToPackages.md +3 -4
- package/docs/academy/02-MasteryTrack/05-Launch/02-PublishYourProject.md +69 -45
- package/docs/academy/02-MasteryTrack/05-Launch/03-SetupEnvironment.md +70 -40
- package/docs/academy/02-MasteryTrack/05-Launch/04-ConfigureEnvironment.md +1 -0
- package/docs/academy/02-MasteryTrack/05-Launch/_category_.json +7 -7
- package/docs/academy/02-MasteryTrack/_category_.json +6 -6
- package/docs/academy/03-ExampleUsecases/Chatroom/02-CreateNewPowerhouseProject.md +5 -3
- package/docs/academy/03-ExampleUsecases/Chatroom/03-DefineChatroomDocumentModel.md +38 -37
- package/docs/academy/03-ExampleUsecases/Chatroom/04-ImplementOperationReducers.md +45 -41
- package/docs/academy/03-ExampleUsecases/Chatroom/05-ImplementChatroomEditor.md +14 -14
- package/docs/academy/03-ExampleUsecases/Chatroom/06-LaunchALocalReactor.md +6 -6
- package/docs/academy/03-ExampleUsecases/Chatroom/_category_.json +1 -1
- package/docs/academy/04-APIReferences/00-PowerhouseCLI.md +9 -7
- package/docs/academy/04-APIReferences/01-ReactHooks.md +177 -129
- package/docs/academy/04-APIReferences/04-RelationalDatabase.md +121 -113
- package/docs/academy/04-APIReferences/05-PHDocumentMigrationGuide.md +48 -41
- package/docs/academy/04-APIReferences/_category_.json +6 -6
- package/docs/academy/05-Architecture/00-PowerhouseArchitecture.md +1 -2
- package/docs/academy/05-Architecture/01-WorkingWithTheReactor.md +11 -8
- package/docs/academy/05-Architecture/05-DocumentModelTheory/_category_.json +1 -1
- package/docs/academy/05-Architecture/_category_.json +6 -6
- package/docs/academy/06-ComponentLibrary/00-DocumentEngineering.md +25 -23
- package/docs/academy/06-ComponentLibrary/02-CreateCustomScalars.md +105 -93
- package/docs/academy/06-ComponentLibrary/03-IntegrateIntoAReactComponent.md +1 -0
- package/docs/academy/06-ComponentLibrary/_category_.json +7 -7
- package/docs/academy/07-Cookbook.md +267 -34
- package/docs/academy/08-Glossary.md +7 -1
- package/docs/bookofpowerhouse/01-Overview.md +2 -2
- package/docs/bookofpowerhouse/02-GeneralFrameworkAndPhilosophy.md +1 -7
- package/docs/bookofpowerhouse/03-PowerhouseSoftwareArchitecture.md +10 -7
- package/docs/bookofpowerhouse/04-DevelopmentApproaches.md +10 -4
- package/docs/bookofpowerhouse/05-SNOsandANewModelForOSSandPublicGoods.md +23 -30
- package/docs/bookofpowerhouse/06-SNOsInActionAndPlatformEconomies.md +0 -7
- package/docusaurus.config.ts +64 -66
- package/package.json +1 -1
- package/scripts/generate-combined-cli-docs.ts +43 -13
- package/sidebars.ts +1 -0
- package/src/components/HomepageFeatures/index.tsx +171 -78
- package/src/components/HomepageFeatures/styles.module.css +1 -2
- package/src/css/custom.css +89 -89
- package/src/pages/_archive-homepage.tsx +17 -16
- package/src/theme/DocCardList/index.tsx +9 -8
- package/static.json +6 -6
|
@@ -4,9 +4,9 @@ slug: /
|
|
|
4
4
|
sidebar_class_name: category-index-page
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
import React from
|
|
8
|
-
import styles from
|
|
9
|
-
import BrowserOnly from
|
|
7
|
+
import React from "react";
|
|
8
|
+
import styles from "./styles.module.css";
|
|
9
|
+
import BrowserOnly from "@docusaurus/BrowserOnly";
|
|
10
10
|
|
|
11
11
|
<div className={styles.learningPath}>
|
|
12
12
|
{/* Get Started Card - Full Width */}
|
|
@@ -44,108 +44,203 @@ import BrowserOnly from '@docusaurus/BrowserOnly';
|
|
|
44
44
|
</div>
|
|
45
45
|
</div>
|
|
46
46
|
|
|
47
|
-
|
|
48
|
-
<div></div> {/* Placeholder for the deleted "New Link" card */}
|
|
47
|
+
{/* Row 1: [Empty Placeholder], Create, [Empty Placeholder] */}
|
|
49
48
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
49
|
+
<div></div> {/* Placeholder for the deleted "New Link" card */}
|
|
50
|
+
|
|
51
|
+
<div className={styles.pathCard} style={{ border: "1px solid #4FC86F" }}>
|
|
52
|
+
<div className={styles.cardHeader}>
|
|
53
|
+
<h3 className="card-title">
|
|
54
|
+
<img
|
|
55
|
+
src="/img/academy/icons/Flash.svg"
|
|
56
|
+
alt=""
|
|
57
|
+
className={styles.titleIcon}
|
|
58
|
+
/>
|
|
59
|
+
Get started
|
|
60
|
+
</h3>
|
|
61
|
+
</div>
|
|
62
|
+
<div className={styles.cardContent}>
|
|
63
|
+
<a
|
|
64
|
+
href="/academy/GetStarted/CreateNewPowerhouseProject"
|
|
65
|
+
className="path-button"
|
|
66
|
+
>
|
|
67
|
+
Build a todo-list document model
|
|
68
|
+
</a>
|
|
60
69
|
</div>
|
|
70
|
+
</div>
|
|
61
71
|
|
|
62
|
-
|
|
72
|
+
<div></div> {/* Placeholder for the deleted "Document Model Theory" card */}
|
|
63
73
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
<a href="/academy/ComponentLibrary/DocumentEngineering" className="path-button">Component library</a>
|
|
77
|
-
</div>
|
|
74
|
+
{/* Row 2: Build User Experiences, Builder Track Image, Work with Data */}
|
|
75
|
+
|
|
76
|
+
<div className={styles.pathCard} style={{ border: "1px solid #4FC86F" }}>
|
|
77
|
+
<div className={styles.cardHeader}>
|
|
78
|
+
<h3 className="card-title">
|
|
79
|
+
<img
|
|
80
|
+
src="/img/academy/icons/Editor.svg"
|
|
81
|
+
alt=""
|
|
82
|
+
className={styles.titleIcon}
|
|
83
|
+
/>
|
|
84
|
+
Build user experiences
|
|
85
|
+
</h3>
|
|
78
86
|
</div>
|
|
87
|
+
<div className={styles.cardContent}>
|
|
88
|
+
<a href="/academy/GetStarted/BuildToDoListEditor" className="path-button">
|
|
89
|
+
Build a todo-list editor
|
|
90
|
+
</a>
|
|
91
|
+
<a
|
|
92
|
+
href="/academy/MasteryTrack/BuildingUserExperiences/BuildingDocumentEditors"
|
|
93
|
+
className="path-button"
|
|
94
|
+
>
|
|
95
|
+
Build document editors
|
|
96
|
+
</a>
|
|
97
|
+
<a
|
|
98
|
+
href="/academy/MasteryTrack/BuildingUserExperiences/BuildingADriveExplorer"
|
|
99
|
+
className="path-button"
|
|
100
|
+
>
|
|
101
|
+
Build custom drive explorers
|
|
102
|
+
</a>
|
|
103
|
+
<a
|
|
104
|
+
href="/academy/ComponentLibrary/DocumentEngineering"
|
|
105
|
+
className="path-button"
|
|
106
|
+
>
|
|
107
|
+
Component library
|
|
108
|
+
</a>
|
|
109
|
+
</div>
|
|
110
|
+
</div>
|
|
79
111
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
112
|
+
<div
|
|
113
|
+
className={styles.middleColumn}
|
|
114
|
+
style={{
|
|
115
|
+
display: "flex",
|
|
116
|
+
justifyContent: "center",
|
|
117
|
+
alignItems: "flex-start",
|
|
118
|
+
paddingTop: "-20px",
|
|
119
|
+
position: "relative",
|
|
120
|
+
}}
|
|
121
|
+
>
|
|
122
|
+
<img src="/img/Union.svg" alt="Powerhouse Union" width="250" />
|
|
123
|
+
<div className={styles.masteryTrackTitle}>
|
|
124
|
+
<h3 className="card-title" style={{ margin: 0 }}>
|
|
125
|
+
Mastery track
|
|
126
|
+
</h3>
|
|
91
127
|
</div>
|
|
128
|
+
</div>
|
|
92
129
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
130
|
+
<div className={styles.pathCard} style={{ border: "1px solid #4FC86F" }}>
|
|
131
|
+
<div className={styles.cardHeader}>
|
|
132
|
+
<h3 className="card-title">
|
|
133
|
+
<img
|
|
134
|
+
src="/img/academy/icons/Data.svg"
|
|
135
|
+
alt=""
|
|
136
|
+
className={styles.titleIcon}
|
|
137
|
+
/>
|
|
138
|
+
Work with data
|
|
139
|
+
</h3>
|
|
140
|
+
</div>
|
|
141
|
+
<div className={styles.cardContent}>
|
|
142
|
+
<a
|
|
143
|
+
href="/academy/MasteryTrack/WorkWithData/UsingTheAPI"
|
|
144
|
+
className="path-button"
|
|
145
|
+
>
|
|
146
|
+
Read & write through the API
|
|
147
|
+
</a>
|
|
148
|
+
<a
|
|
149
|
+
href="/academy/MasteryTrack/WorkWithData/WorkingWithSubgraphs"
|
|
150
|
+
className="path-button"
|
|
151
|
+
>
|
|
152
|
+
Create your own subgraph
|
|
153
|
+
</a>
|
|
154
|
+
<a
|
|
155
|
+
href="/academy/MasteryTrack/WorkWithData/Analytics-Engine/intro"
|
|
156
|
+
className="path-button"
|
|
157
|
+
>
|
|
158
|
+
Use the analytics engine
|
|
159
|
+
</a>
|
|
105
160
|
</div>
|
|
161
|
+
</div>
|
|
106
162
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
163
|
+
{/* Launch Card - Full Width with 3 column buttons - RE-INSERTED */}
|
|
164
|
+
|
|
165
|
+
<div className={`${styles.pathCard} ${styles.fullWidth}`}>
|
|
166
|
+
<div className={styles.cardHeader}>
|
|
167
|
+
<h3 className="card-title">
|
|
168
|
+
<img
|
|
169
|
+
src="/img/academy/icons/Launch.svg"
|
|
170
|
+
alt=""
|
|
171
|
+
className={styles.titleIcon}
|
|
172
|
+
/>
|
|
173
|
+
Launch
|
|
174
|
+
</h3>
|
|
175
|
+
</div>
|
|
176
|
+
<div className={styles.cardContent}>
|
|
177
|
+
<div className={styles.buttonContainer}>
|
|
178
|
+
<a
|
|
179
|
+
href="/academy/MasteryTrack/Launch/IntroductionToPackages"
|
|
180
|
+
className="path-button"
|
|
181
|
+
>
|
|
182
|
+
Intro to packages
|
|
183
|
+
</a>
|
|
184
|
+
<a
|
|
185
|
+
href="/academy/MasteryTrack/Launch/PublishYourProject"
|
|
186
|
+
className="path-button"
|
|
187
|
+
>
|
|
188
|
+
Publish your project
|
|
189
|
+
</a>
|
|
190
|
+
<a
|
|
191
|
+
href="/academy/MasteryTrack/Launch/SetupEnvironment"
|
|
192
|
+
className="path-button"
|
|
193
|
+
>
|
|
194
|
+
Set-up a cloud environment
|
|
195
|
+
</a>
|
|
121
196
|
</div>
|
|
122
197
|
</div>
|
|
198
|
+
</div>
|
|
123
199
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
200
|
+
{/* Row 3: Cookbook, Use-cases, Advanced Topics */}
|
|
201
|
+
|
|
202
|
+
<div className={styles.pathCard}>
|
|
203
|
+
<div className={styles.cardHeader}>
|
|
204
|
+
<h3 className="card-title">
|
|
205
|
+
<img
|
|
206
|
+
src="/img/academy/icons/Cookbook.svg"
|
|
207
|
+
alt=""
|
|
208
|
+
className={styles.titleIcon}
|
|
209
|
+
/>
|
|
210
|
+
Cookbook
|
|
211
|
+
</h3>
|
|
135
212
|
</div>
|
|
213
|
+
<div className={styles.cardContent}>
|
|
214
|
+
<a href="/academy/Cookbook" className="path-button">
|
|
215
|
+
Powerhouse recipes
|
|
216
|
+
</a>
|
|
217
|
+
</div>
|
|
218
|
+
</div>
|
|
136
219
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
220
|
+
{/* Ensure this Use-cases Card block is clean */}
|
|
221
|
+
|
|
222
|
+
<div className={styles.pathCard}>
|
|
223
|
+
{" "}
|
|
224
|
+
{/* New Use-cases Card */}
|
|
225
|
+
<div className={styles.cardHeader}>
|
|
226
|
+
<h3 className="card-title">
|
|
227
|
+
<img
|
|
228
|
+
src="/img/academy/icons/Cookbook.svg"
|
|
229
|
+
alt="Use-cases Icon"
|
|
230
|
+
className={styles.titleIcon}
|
|
231
|
+
/>
|
|
232
|
+
Use-cases
|
|
233
|
+
</h3>
|
|
234
|
+
</div>
|
|
235
|
+
<div className={styles.cardContent}>
|
|
236
|
+
<a
|
|
237
|
+
href="/academy/ExampleUsecases/Chatroom/SetupBuilderEnvironment"
|
|
238
|
+
className="path-button"
|
|
239
|
+
>
|
|
240
|
+
Explore use-cases
|
|
241
|
+
</a>
|
|
148
242
|
</div>
|
|
243
|
+
</div>
|
|
149
244
|
|
|
150
245
|
<div className={styles.pathCard}>
|
|
151
246
|
<div className={styles.cardHeader}>
|
|
@@ -158,4 +253,4 @@ import BrowserOnly from '@docusaurus/BrowserOnly';
|
|
|
158
253
|
<a href="/academy/Architecture/PowerhouseArchitecture" className="path-button">Learn more</a>
|
|
159
254
|
</div>
|
|
160
255
|
</div>
|
|
161
|
-
</div>
|
|
256
|
+
</div>
|
|
@@ -101,23 +101,23 @@
|
|
|
101
101
|
top: 18px;
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
-
:global([data-theme=
|
|
104
|
+
:global([data-theme="dark"]) .masteryTrackTitle {
|
|
105
105
|
background-color: var(--ifm-card-background-color);
|
|
106
106
|
border: 1px solid var(--ifm-color-emphasis-200);
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
:global([data-theme=
|
|
109
|
+
:global([data-theme="dark"]) .pathCard {
|
|
110
110
|
background: var(--ifm-card-background-color);
|
|
111
111
|
border: 1px solid var(--ifm-color-emphasis-200);
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
-
:global([data-theme=
|
|
114
|
+
:global([data-theme="dark"]) :global(.path-button) {
|
|
115
115
|
background: var(--ifm-color-emphasis-100);
|
|
116
116
|
border-color: var(--ifm-color-emphasis-200);
|
|
117
117
|
color: var(--ifm-font-color-primary);
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
:global([data-theme=
|
|
120
|
+
:global([data-theme="dark"]) :global(.path-button:hover) {
|
|
121
121
|
background: var(--ifm-color-emphasis-200);
|
|
122
122
|
border-color: var(--ifm-color-emphasis-300);
|
|
123
|
-
}
|
|
123
|
+
}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
# Prerequisites
|
|
1
|
+
# Prerequisites
|
|
2
2
|
|
|
3
3
|
Let's set up your machine to start building your first Document Model. Don't worry if this is your first time setting up a development environment - we'll guide you through each step!
|
|
4
4
|
|
|
5
5
|
:::info
|
|
6
6
|
If you've already set up **Git, Node, and pnpm**, your most important step is to install the **Powerhouse CLI** with the command: `pnpm install ph-cmd`. A global install is recommended if you want to use the command from any directory as a power user. In this case use `pnpm install -g ph-cmd`. The Powerhouse CLI is used to create, build, and run your Document Models and gives you direct access to a series of Powerhouse Builder Tools. Move to the end of this page to [verify your installation.](#verify-installation)
|
|
7
7
|
:::
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
---
|
|
9
10
|
|
|
10
11
|
## Overview
|
|
11
12
|
|
|
12
|
-
Before we begin building our Document Model, we need to install some software on your machine. We'll need three main tools:
|
|
13
|
+
Before we begin building our Document Model, we need to install some software on your machine. We'll need three main tools:
|
|
14
|
+
|
|
13
15
|
- Node.js 22, which helps us run our code.
|
|
14
16
|
- Visual Studio Code (VS Code), which is where we'll write our code
|
|
15
|
-
- Git, which helps us manage our code.
|
|
17
|
+
- Git, which helps us manage our code.
|
|
16
18
|
|
|
17
19
|
Follow the steps below based on your computer's operating system.
|
|
18
20
|
|
|
@@ -21,14 +23,17 @@ Follow the steps below based on your computer's operating system.
|
|
|
21
23
|
node.js 22 is a tool that lets us run our application. Let's install it step by step.
|
|
22
24
|
|
|
23
25
|
#### For Windows:
|
|
26
|
+
|
|
24
27
|
1. **Set up PowerShell for running commands:**
|
|
25
28
|
- Press the Windows key
|
|
26
29
|
- Type "PowerShell"
|
|
27
30
|
- Right-click on "Windows PowerShell" and select "Run as administrator"
|
|
28
31
|
- In the PowerShell window, type this command and press Enter:
|
|
32
|
+
|
|
29
33
|
```powershell
|
|
30
34
|
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
|
|
31
35
|
```
|
|
36
|
+
|
|
32
37
|
- Type 'A' when prompted to confirm
|
|
33
38
|
- You can now close this window and open PowerShell normally for the remaining steps
|
|
34
39
|
|
|
@@ -41,6 +46,7 @@ node.js 22 is a tool that lets us run our application. Let's install it step by
|
|
|
41
46
|
3. **Install pnpm:**
|
|
42
47
|
- Open PowerShell (no need for admin mode)
|
|
43
48
|
- Type this command and press Enter:
|
|
49
|
+
|
|
44
50
|
```powershell
|
|
45
51
|
npm install -g pnpm
|
|
46
52
|
```
|
|
@@ -52,25 +58,32 @@ node.js 22 is a tool that lets us run our application. Let's install it step by
|
|
|
52
58
|
node --version
|
|
53
59
|
pnpm --version
|
|
54
60
|
```
|
|
61
|
+
|
|
55
62
|
- You should see version numbers appear after each command (e.g., v18.17.0). If you do, congratulations - Node.js and pnpm are installed!
|
|
56
63
|
|
|
57
64
|
> **Note**: If node.js 22 commands don't work in VS Code, restart VS Code to refresh environment variables.
|
|
58
65
|
|
|
59
66
|
#### For macOS:
|
|
67
|
+
|
|
60
68
|
1. **Install Homebrew:**
|
|
61
69
|
- Open Terminal (press Command + Space and type "Terminal")
|
|
62
70
|
- Copy and paste this command into Terminal and press Enter:
|
|
71
|
+
|
|
63
72
|
```bash
|
|
64
73
|
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
65
74
|
```
|
|
75
|
+
|
|
66
76
|
- Follow any additional instructions that appear
|
|
67
77
|
|
|
68
78
|
2. **Install node.js 22:**
|
|
69
79
|
- In the same Terminal window, type this command and press Enter:
|
|
80
|
+
|
|
70
81
|
```bash
|
|
71
82
|
brew install node@22
|
|
72
83
|
```
|
|
84
|
+
|
|
73
85
|
- Then, install pnpm:
|
|
86
|
+
|
|
74
87
|
```bash
|
|
75
88
|
brew install pnpm
|
|
76
89
|
```
|
|
@@ -81,19 +94,23 @@ node.js 22 is a tool that lets us run our application. Let's install it step by
|
|
|
81
94
|
node --version
|
|
82
95
|
pnpm --version
|
|
83
96
|
```
|
|
97
|
+
|
|
84
98
|
- If you see version numbers, you've successfully installed Node.js and pnpm!
|
|
85
99
|
|
|
86
100
|
#### For Linux (Ubuntu/Debian):
|
|
101
|
+
|
|
87
102
|
1. **Open Terminal:**
|
|
88
103
|
- Press Ctrl + Alt + T on your keyboard, or
|
|
89
104
|
- Click the Activities button and type "Terminal"
|
|
90
105
|
|
|
91
106
|
2. **Update Package List:**
|
|
107
|
+
|
|
92
108
|
```bash
|
|
93
109
|
sudo apt update
|
|
94
110
|
```
|
|
95
111
|
|
|
96
112
|
3. **Install node.js 22 and pnpm:**
|
|
113
|
+
|
|
97
114
|
```bash
|
|
98
115
|
sudo apt install nodejs pnpm
|
|
99
116
|
```
|
|
@@ -104,6 +121,7 @@ node.js 22 is a tool that lets us run our application. Let's install it step by
|
|
|
104
121
|
node --version
|
|
105
122
|
pnpm --version
|
|
106
123
|
```
|
|
124
|
+
|
|
107
125
|
- If you see version numbers, you're all set!
|
|
108
126
|
|
|
109
127
|
### Installing Visual Studio Code
|
|
@@ -111,6 +129,7 @@ node.js 22 is a tool that lets us run our application. Let's install it step by
|
|
|
111
129
|
VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
112
130
|
|
|
113
131
|
#### For Windows:
|
|
132
|
+
|
|
114
133
|
1. Visit the [Visual Studio Code website](https://code.visualstudio.com/)
|
|
115
134
|
2. Click the blue "Download for Windows" button
|
|
116
135
|
3. Once the installer downloads, double-click it
|
|
@@ -121,6 +140,7 @@ VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
|
121
140
|
8. When installation is complete, click "Finish"
|
|
122
141
|
|
|
123
142
|
#### For macOS:
|
|
143
|
+
|
|
124
144
|
1. Visit the [Visual Studio Code website](https://code.visualstudio.com/)
|
|
125
145
|
2. Click the blue "Download for Mac" button
|
|
126
146
|
3. Once the .zip file downloads, double-click it to extract
|
|
@@ -132,6 +152,7 @@ VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
|
132
152
|
- Type "shell command" and select "Shell Command: Install 'code' command in PATH"
|
|
133
153
|
|
|
134
154
|
#### For Linux (Ubuntu/Debian):
|
|
155
|
+
|
|
135
156
|
1. Open Terminal (Ctrl + Alt + T)
|
|
136
157
|
2. First, update the packages list:
|
|
137
158
|
```bash
|
|
@@ -160,6 +181,7 @@ VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
|
160
181
|
### Install Git
|
|
161
182
|
|
|
162
183
|
#### For Windows
|
|
184
|
+
|
|
163
185
|
1. Open PowerShell (press Windows key, type "PowerShell", and press Enter)
|
|
164
186
|
2. Visit the [Git website](https://git-scm.com/)
|
|
165
187
|
3. Download the latest version for Windows
|
|
@@ -170,6 +192,7 @@ VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
|
170
192
|
```
|
|
171
193
|
|
|
172
194
|
#### For macOS
|
|
195
|
+
|
|
173
196
|
1. Install using Homebrew:
|
|
174
197
|
```bash
|
|
175
198
|
brew install git
|
|
@@ -180,6 +203,7 @@ VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
|
180
203
|
```
|
|
181
204
|
|
|
182
205
|
#### For Linux (Ubuntu/Debian)
|
|
206
|
+
|
|
183
207
|
1. Update package list:
|
|
184
208
|
```bash
|
|
185
209
|
sudo apt update
|
|
@@ -196,6 +220,7 @@ VS Code is the editor we'll use to write our code. Here's how to install it:
|
|
|
196
220
|
### Configure Git (All Systems)
|
|
197
221
|
|
|
198
222
|
After installation, set up your identity:
|
|
223
|
+
|
|
199
224
|
```bash
|
|
200
225
|
git config --global user.name "Your Name"
|
|
201
226
|
git config --global user.email "your.email@example.com"
|
|
@@ -204,11 +229,13 @@ git config --global user.email "your.email@example.com"
|
|
|
204
229
|
### Install the Powerhouse CLI
|
|
205
230
|
|
|
206
231
|
The Powerhouse CLI (installed via the `ph-cmd` package) is a command-line interface tool. It provides the `ph` command, which is essential for managing Powerhouse projects. You can get access to the Powerhouse Ecosystem tools by installing them globally using:
|
|
232
|
+
|
|
207
233
|
```bash
|
|
208
234
|
pnpm install -g ph-cmd
|
|
209
|
-
```
|
|
235
|
+
```
|
|
210
236
|
|
|
211
237
|
Key commands include:
|
|
238
|
+
|
|
212
239
|
- `ph connect` for running the Connect application locally
|
|
213
240
|
- `ph switchboard` or `ph reactor` for starting the API service
|
|
214
241
|
- `ph init` to start a new project and build a document model
|
|
@@ -221,24 +248,26 @@ This tool will be fundamental on your journey when creating, building, and runni
|
|
|
221
248
|
|
|
222
249
|
When installing or using the Powerhouse CLI commands you can use the dev & staging branches. These branches contain more experimental features than the latest stable release the PH CLI uses by default. They can be used to get access to a bug fix or features under development.
|
|
223
250
|
|
|
224
|
-
| Command
|
|
225
|
-
|
|
226
|
-
| **pnpm install -g ph-cmd**
|
|
227
|
-
| **pnpm install -g ph-cmd@dev**
|
|
228
|
-
| **pnpm install -g ph-cmd@staging** | Install staging version
|
|
229
|
-
| **ph init**
|
|
230
|
-
| **ph init --dev**
|
|
231
|
-
| **ph init --staging**
|
|
232
|
-
| **ph use**
|
|
233
|
-
| **ph use dev**
|
|
234
|
-
| **ph use prod**
|
|
251
|
+
| Command | Description |
|
|
252
|
+
| ---------------------------------- | ----------------------------------------------------- |
|
|
253
|
+
| **pnpm install -g ph-cmd** | Install latest stable version |
|
|
254
|
+
| **pnpm install -g ph-cmd@dev** | Install development version |
|
|
255
|
+
| **pnpm install -g ph-cmd@staging** | Install staging version |
|
|
256
|
+
| **ph init** | Use latest stable version of the boilerplate |
|
|
257
|
+
| **ph init --dev** | Use development version of the boilerplate |
|
|
258
|
+
| **ph init --staging** | Use staging version of the boilerplate |
|
|
259
|
+
| **ph use** | Switch all dependencies to latest production versions |
|
|
260
|
+
| **ph use dev** | Switch all dependencies to development versions |
|
|
261
|
+
| **ph use prod** | Switch all dependencies to production versions |
|
|
235
262
|
|
|
236
263
|
Please be aware that these versions can contain bugs and experimental features that aren't fully tested.
|
|
264
|
+
|
|
237
265
|
</details>
|
|
238
266
|
|
|
239
267
|
### Verify Installation
|
|
240
268
|
|
|
241
269
|
Open your terminal (command prompt) and run the following commands to verify your setup:
|
|
270
|
+
|
|
242
271
|
```bash
|
|
243
272
|
node --version
|
|
244
273
|
pnpm --version
|
|
@@ -255,10 +284,9 @@ v22.16.0
|
|
|
255
284
|
% pnpm --version
|
|
256
285
|
10.10.0
|
|
257
286
|
% git --version
|
|
258
|
-
git version 2.39.3
|
|
287
|
+
git version 2.39.3
|
|
259
288
|
% ph --version
|
|
260
289
|
PH CMD version: 0.43.18
|
|
261
290
|
-------------------------------------
|
|
262
291
|
PH CLI is not available, please run `ph setup-globals` to generate the default global project
|
|
263
292
|
```
|
|
264
|
-
|