buildx-cli 1.8.18 → 1.8.20
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/README.md +69 -0
- package/dist/README.md +69 -0
- package/dist/index.cjs +3 -3
- package/dist/index.js +3 -3
- package/dist/package.json +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -160,6 +160,12 @@ Lists available projects for the authenticated account.
|
|
|
160
160
|
npx buildx-cli projects:list
|
|
161
161
|
```
|
|
162
162
|
|
|
163
|
+
Filter by product key (`project.product.key`):
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
npx buildx-cli projects:list --product-key approval
|
|
167
|
+
```
|
|
168
|
+
|
|
163
169
|
#### `projects:set-default <project-id>`
|
|
164
170
|
Sets default project used by commands when `--project-id` is not provided.
|
|
165
171
|
|
|
@@ -213,6 +219,65 @@ Validate locale format before saving.
|
|
|
213
219
|
npx buildx-cli projects:locale:validate --default-language en-US --timezone UTC
|
|
214
220
|
```
|
|
215
221
|
|
|
222
|
+
#### `project:init`
|
|
223
|
+
Initialize a new Buildx project and optional app scaffold.
|
|
224
|
+
|
|
225
|
+
Modes:
|
|
226
|
+
- `plain`: creates standalone project via `POST /projects`.
|
|
227
|
+
- `product`: tries `POST /product/:product_key/projects`, then falls back to `plain` when product creation is denied (for example non-root auth).
|
|
228
|
+
|
|
229
|
+
Key options:
|
|
230
|
+
- `--project-id <id>`: target project ID (required)
|
|
231
|
+
- `--name <name>`: project name (required)
|
|
232
|
+
- `--description <text>`: project description (optional)
|
|
233
|
+
- `--product-key <key>`: enable product mode first, with fallback to plain mode
|
|
234
|
+
- `--app <none|next|expo|react>`: app scaffold target (default `none`)
|
|
235
|
+
- `--react-stack <vite|next|expo-web>`: required when `--app react`
|
|
236
|
+
- `--out-dir <path>`: output workspace directory (default `./<project-id>`)
|
|
237
|
+
- `--overwrite`: allow writing into non-empty output directory
|
|
238
|
+
- `--dry-run`: compute output without writing files or calling APIs
|
|
239
|
+
- `--json`: print machine-readable result
|
|
240
|
+
|
|
241
|
+
Examples:
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
# backend only (plain mode)
|
|
245
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World"
|
|
246
|
+
|
|
247
|
+
# product mode first, fallback to plain when not allowed
|
|
248
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World" --product-key approval
|
|
249
|
+
|
|
250
|
+
# backend + Next.js app
|
|
251
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World" --app next
|
|
252
|
+
|
|
253
|
+
# backend + Expo app
|
|
254
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World" --app expo
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
Generated auth-aware structure:
|
|
258
|
+
- Next.js template uses route groups for separation:
|
|
259
|
+
- `app/(public)/...` (sign-in/sign-up/forgot-password)
|
|
260
|
+
- `app/(private)/...` (protected dashboard)
|
|
261
|
+
- Expo template uses auth-state route split in `App.tsx`:
|
|
262
|
+
- public screen tree for unauthenticated users
|
|
263
|
+
- private screen tree for authenticated users
|
|
264
|
+
|
|
265
|
+
### New Project Maintenance
|
|
266
|
+
|
|
267
|
+
After `project:init`, use these commands to maintain local/remote artifact parity:
|
|
268
|
+
|
|
269
|
+
```bash
|
|
270
|
+
# schema lifecycle
|
|
271
|
+
npx buildx-cli schema:pull --project-id <project-id>
|
|
272
|
+
npx buildx-cli schema:diff --project-id <project-id>
|
|
273
|
+
npx buildx-cli schema:push --project-id <project-id> --dry-run
|
|
274
|
+
|
|
275
|
+
# function lifecycle
|
|
276
|
+
npx buildx-cli function:pull --project-id <project-id>
|
|
277
|
+
npx buildx-cli function:diff --project-id <project-id>
|
|
278
|
+
npx buildx-cli function:push --project-id <project-id> --dry-run
|
|
279
|
+
```
|
|
280
|
+
|
|
216
281
|
### Users
|
|
217
282
|
|
|
218
283
|
#### `user:list`
|
|
@@ -333,6 +398,7 @@ Behavior:
|
|
|
333
398
|
|
|
334
399
|
Key options:
|
|
335
400
|
- `-p, --project-id <id>`
|
|
401
|
+
- `--product-key <key>` push to all projects where `project.product.key` matches (cannot be used with `--project-id`)
|
|
336
402
|
- `-t, --target-dir <path>`
|
|
337
403
|
- `--collections-file <path>` (when no `--target-dir`)
|
|
338
404
|
- `--filter <pattern...>`
|
|
@@ -341,6 +407,7 @@ Key options:
|
|
|
341
407
|
|
|
342
408
|
```bash
|
|
343
409
|
npx buildx-cli schema:push --project-id hello-world --target-dir ./.sandbox/buildx-cli --dry-run
|
|
410
|
+
npx buildx-cli schema:push --product-key approval --target-dir ./.sandbox/buildx-cli --dry-run
|
|
344
411
|
```
|
|
345
412
|
|
|
346
413
|
#### `schema:types:convert`
|
|
@@ -478,6 +545,7 @@ Behavior:
|
|
|
478
545
|
|
|
479
546
|
Key options:
|
|
480
547
|
- `-p, --project-id <id>`
|
|
548
|
+
- `--product-key <key>` push to all projects where `project.product.key` matches (cannot be used with `--project-id`)
|
|
481
549
|
- `-t, --target-dir <path>`
|
|
482
550
|
- `--functions-dir <path>` (when no `--target-dir`)
|
|
483
551
|
- `-n, --name <function-name>` for a single function
|
|
@@ -489,6 +557,7 @@ Key options:
|
|
|
489
557
|
|
|
490
558
|
```bash
|
|
491
559
|
npx buildx-cli function:push --project-id hello-world --target-dir ./.sandbox/buildx-cli --dry-run
|
|
560
|
+
npx buildx-cli function:push --product-key approval --target-dir ./.sandbox/buildx-cli --dry-run
|
|
492
561
|
```
|
|
493
562
|
|
|
494
563
|
#### `function:list`
|
package/dist/README.md
CHANGED
|
@@ -160,6 +160,12 @@ Lists available projects for the authenticated account.
|
|
|
160
160
|
npx buildx-cli projects:list
|
|
161
161
|
```
|
|
162
162
|
|
|
163
|
+
Filter by product key (`project.product.key`):
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
npx buildx-cli projects:list --product-key approval
|
|
167
|
+
```
|
|
168
|
+
|
|
163
169
|
#### `projects:set-default <project-id>`
|
|
164
170
|
Sets default project used by commands when `--project-id` is not provided.
|
|
165
171
|
|
|
@@ -213,6 +219,65 @@ Validate locale format before saving.
|
|
|
213
219
|
npx buildx-cli projects:locale:validate --default-language en-US --timezone UTC
|
|
214
220
|
```
|
|
215
221
|
|
|
222
|
+
#### `project:init`
|
|
223
|
+
Initialize a new Buildx project and optional app scaffold.
|
|
224
|
+
|
|
225
|
+
Modes:
|
|
226
|
+
- `plain`: creates standalone project via `POST /projects`.
|
|
227
|
+
- `product`: tries `POST /product/:product_key/projects`, then falls back to `plain` when product creation is denied (for example non-root auth).
|
|
228
|
+
|
|
229
|
+
Key options:
|
|
230
|
+
- `--project-id <id>`: target project ID (required)
|
|
231
|
+
- `--name <name>`: project name (required)
|
|
232
|
+
- `--description <text>`: project description (optional)
|
|
233
|
+
- `--product-key <key>`: enable product mode first, with fallback to plain mode
|
|
234
|
+
- `--app <none|next|expo|react>`: app scaffold target (default `none`)
|
|
235
|
+
- `--react-stack <vite|next|expo-web>`: required when `--app react`
|
|
236
|
+
- `--out-dir <path>`: output workspace directory (default `./<project-id>`)
|
|
237
|
+
- `--overwrite`: allow writing into non-empty output directory
|
|
238
|
+
- `--dry-run`: compute output without writing files or calling APIs
|
|
239
|
+
- `--json`: print machine-readable result
|
|
240
|
+
|
|
241
|
+
Examples:
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
# backend only (plain mode)
|
|
245
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World"
|
|
246
|
+
|
|
247
|
+
# product mode first, fallback to plain when not allowed
|
|
248
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World" --product-key approval
|
|
249
|
+
|
|
250
|
+
# backend + Next.js app
|
|
251
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World" --app next
|
|
252
|
+
|
|
253
|
+
# backend + Expo app
|
|
254
|
+
npx buildx-cli project:init --project-id hello-world --name "Hello World" --app expo
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
Generated auth-aware structure:
|
|
258
|
+
- Next.js template uses route groups for separation:
|
|
259
|
+
- `app/(public)/...` (sign-in/sign-up/forgot-password)
|
|
260
|
+
- `app/(private)/...` (protected dashboard)
|
|
261
|
+
- Expo template uses auth-state route split in `App.tsx`:
|
|
262
|
+
- public screen tree for unauthenticated users
|
|
263
|
+
- private screen tree for authenticated users
|
|
264
|
+
|
|
265
|
+
### New Project Maintenance
|
|
266
|
+
|
|
267
|
+
After `project:init`, use these commands to maintain local/remote artifact parity:
|
|
268
|
+
|
|
269
|
+
```bash
|
|
270
|
+
# schema lifecycle
|
|
271
|
+
npx buildx-cli schema:pull --project-id <project-id>
|
|
272
|
+
npx buildx-cli schema:diff --project-id <project-id>
|
|
273
|
+
npx buildx-cli schema:push --project-id <project-id> --dry-run
|
|
274
|
+
|
|
275
|
+
# function lifecycle
|
|
276
|
+
npx buildx-cli function:pull --project-id <project-id>
|
|
277
|
+
npx buildx-cli function:diff --project-id <project-id>
|
|
278
|
+
npx buildx-cli function:push --project-id <project-id> --dry-run
|
|
279
|
+
```
|
|
280
|
+
|
|
216
281
|
### Users
|
|
217
282
|
|
|
218
283
|
#### `user:list`
|
|
@@ -333,6 +398,7 @@ Behavior:
|
|
|
333
398
|
|
|
334
399
|
Key options:
|
|
335
400
|
- `-p, --project-id <id>`
|
|
401
|
+
- `--product-key <key>` push to all projects where `project.product.key` matches (cannot be used with `--project-id`)
|
|
336
402
|
- `-t, --target-dir <path>`
|
|
337
403
|
- `--collections-file <path>` (when no `--target-dir`)
|
|
338
404
|
- `--filter <pattern...>`
|
|
@@ -341,6 +407,7 @@ Key options:
|
|
|
341
407
|
|
|
342
408
|
```bash
|
|
343
409
|
npx buildx-cli schema:push --project-id hello-world --target-dir ./.sandbox/buildx-cli --dry-run
|
|
410
|
+
npx buildx-cli schema:push --product-key approval --target-dir ./.sandbox/buildx-cli --dry-run
|
|
344
411
|
```
|
|
345
412
|
|
|
346
413
|
#### `schema:types:convert`
|
|
@@ -478,6 +545,7 @@ Behavior:
|
|
|
478
545
|
|
|
479
546
|
Key options:
|
|
480
547
|
- `-p, --project-id <id>`
|
|
548
|
+
- `--product-key <key>` push to all projects where `project.product.key` matches (cannot be used with `--project-id`)
|
|
481
549
|
- `-t, --target-dir <path>`
|
|
482
550
|
- `--functions-dir <path>` (when no `--target-dir`)
|
|
483
551
|
- `-n, --name <function-name>` for a single function
|
|
@@ -489,6 +557,7 @@ Key options:
|
|
|
489
557
|
|
|
490
558
|
```bash
|
|
491
559
|
npx buildx-cli function:push --project-id hello-world --target-dir ./.sandbox/buildx-cli --dry-run
|
|
560
|
+
npx buildx-cli function:push --product-key approval --target-dir ./.sandbox/buildx-cli --dry-run
|
|
492
561
|
```
|
|
493
562
|
|
|
494
563
|
#### `function:list`
|