@gasboost/console 0.4.2 → 0.4.3

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 (2) hide show
  1. package/README.md +228 -5
  2. package/package.json +3 -3
package/README.md CHANGED
@@ -1,13 +1,236 @@
1
1
  # @gasboost/console
2
2
 
3
- gasboost project lifecycle UI.
3
+ Local project lifecycle UI for gasboost.
4
+
5
+ Open the console with:
4
6
 
5
7
  ```bash
6
8
  gasboost console open
7
9
  ```
8
10
 
9
- The UI is prebuilt and bundled with this package. Projects do not need a Vite configuration for the Console.
11
+ Generated projects expose the same command as:
12
+
13
+ ```bash
14
+ pnpm console
15
+ ```
16
+
17
+ The UI is prebuilt and bundled with this package. Projects do not need a separate Vite configuration for the console itself.
18
+
19
+ ## Project Lifecycle
20
+
21
+ The console is organized into five sections:
22
+
23
+ ```text
24
+ Overview
25
+ Development
26
+ Apps Script
27
+ Deployment
28
+ Firebase
29
+ ```
30
+
31
+ These sections represent the lifecycle of a gasboost project rather than individual CLI commands.
32
+
33
+ Sections remain accessible even when their corresponding external capability has not been configured.
34
+
35
+ If setup is incomplete, the section presents setup, connect, or enable operations instead of disappearing.
36
+
37
+ ## Desired State and Actual State
38
+
39
+ The console combines the project's declared Desired State with detected Actual State.
40
+
41
+ ### Desired State
42
+
43
+ Declared by:
44
+
45
+ ```text
46
+ gasboost.config.ts
47
+ ```
48
+
49
+ ```text
50
+ gasboost.config.ts
51
+
52
+ Desired State
53
+ ```
54
+
55
+ Examples include:
56
+
57
+ - Apps Script web application configuration
58
+ - build output directory
59
+ - Firebase Realtime Database capability
60
+ - RTDB rules source and output paths
61
+
62
+ ### Actual State
63
+
64
+ Actual State is discovered from the local environment and connected external resources.
65
+
66
+ Examples include:
67
+
68
+ ```text
69
+ .clasp.json
70
+ appsscript.json
71
+ .env
72
+ CLI / Google authentication
73
+ Apps Script project state
74
+ deployment state
75
+ Firebase project state
76
+ ```
77
+
78
+ ```text
79
+ local files
80
+ provider state
81
+ authentication state
82
+
83
+ Actual State
84
+ ```
85
+
86
+ The console combines both views:
87
+
88
+ ```text
89
+ Desired State
90
+ +
91
+ Actual State
92
+
93
+ gasboost console
94
+ ```
95
+
96
+ This makes it possible to show a capability before it has been fully connected and guide the developer toward the next lifecycle operation.
97
+
98
+ ## Overview
99
+
100
+ Overview presents the current state of the project and its configured or detected capabilities.
101
+
102
+ It acts as the entry point for understanding what is connected and which setup work remains.
103
+
104
+ ## Development
105
+
106
+ Development controls the local application lifecycle.
107
+
108
+ Supported operations include:
109
+
110
+ ```text
111
+ start
112
+ stop
113
+ restart
114
+ ```
115
+
116
+ The console can also detect the local development URL and open the running application.
117
+
118
+ Development runs the project's registered development operation rather than exposing an arbitrary shell command endpoint.
119
+
120
+ ## Apps Script
121
+
122
+ The Apps Script section manages the Apps Script project lifecycle.
123
+
124
+ It can surface:
125
+
126
+ - clasp / Google authorization state
127
+ - project creation
128
+ - connection to an existing project
129
+ - Apps Script editor navigation
130
+ - source push
131
+ - project settings navigation
132
+
133
+ Local project state such as `.clasp.json` is treated as Actual State.
134
+
135
+ The section remains available before an Apps Script project has been connected.
136
+
137
+ ## Deployment
138
+
139
+ The Deployment section manages Apps Script deployments.
140
+
141
+ Lifecycle operations include:
142
+
143
+ ```text
144
+ list
145
+ create
146
+ update
147
+ open deployed app
148
+ ```
149
+
150
+ Deployment state is discovered from the connected Apps Script project rather than stored in `gasboost.config.ts`.
151
+
152
+ ## Firebase
153
+
154
+ The Firebase section manages the assisted lifecycle around Firebase capabilities.
155
+
156
+ It can guide the developer through operations such as:
157
+
158
+ - enable or connect a Firebase project
159
+ - open Firebase Console
160
+ - Web App setup
161
+ - Realtime Database setup
162
+ - Security Rules generation
163
+ - Security Rules deployment
164
+ - assisted credential configuration
165
+
166
+ The console does not silently create or register sensitive credentials.
167
+
168
+ ## Credentials
169
+
170
+ Firebase service-account private keys are not entered into, stored by, or automatically registered by the console.
171
+
172
+ Instead, the console uses an assisted flow.
173
+
174
+ ```text
175
+ gasboost console
176
+
177
+ open provider / project settings UI
178
+
179
+ developer obtains required value
180
+
181
+ developer explicitly configures
182
+ Apps Script Script Properties
183
+ ```
184
+
185
+ For example, the developer may configure:
186
+
187
+ ```text
188
+ FIREBASE_SERVICE_ACCOUNT_EMAIL
189
+ FIREBASE_PRIVATE_KEY
190
+ ```
191
+
192
+ through Apps Script Project Settings.
193
+
194
+ This keeps credential ownership explicit and avoids turning the console into a secret-storage system.
195
+
196
+ ## Operation Security
197
+
198
+ The browser cannot execute arbitrary shell commands.
199
+
200
+ Console actions are implemented as registered operations with structured input.
201
+
202
+ ```text
203
+ browser action
204
+
205
+ registered operation ID
206
+
207
+ validated structured input
208
+
209
+ known implementation
210
+ ```
211
+
212
+ The generic runtime and security boundary are provided by `@gasboost/console-runtime`.
213
+
214
+ ## Architecture
215
+
216
+ ```text
217
+ @gasboost/cli
218
+
219
+ starts console
220
+
221
+ @gasboost/console
222
+
223
+ registers gasboost-specific operations
224
+
225
+ @gasboost/console-runtime
226
+
227
+ localhost browser transport
228
+ ```
229
+
230
+ `@gasboost/console` owns gasboost-specific lifecycle knowledge.
231
+
232
+ `@gasboost/console-runtime` remains generic.
233
+
234
+ ## License
10
235
 
11
- When `appsScript` is configured, the Console provides authorization status,
12
- project creation, editor opening, and confirmed file pushes through registered
13
- operations backed by `@google/clasp`.
236
+ MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gasboost/console",
3
- "version": "0.4.2",
3
+ "version": "0.4.3",
4
4
  "description": "gasboost project lifecycle console",
5
5
  "type": "module",
6
6
  "exports": {
@@ -20,8 +20,8 @@
20
20
  "@google/clasp": "^3.4.1",
21
21
  "lucide": "^0.544.0",
22
22
  "zod": "^4.1.12",
23
- "@gasboost/config": "0.1.1",
24
- "@gasboost/console-runtime": "0.1.1"
23
+ "@gasboost/config": "0.1.2",
24
+ "@gasboost/console-runtime": "0.1.2"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/node": "^24.13.4",