buildx-cli 1.8.23 → 1.8.25

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 CHANGED
@@ -236,6 +236,7 @@ Key options:
236
236
  - `--react-stack <vite|next|expo-web>`: required when `--app react`
237
237
  - `--out-dir <path>`: output workspace directory (default `./<project-id>`)
238
238
  - `--overwrite`: allow writing into non-empty output directory
239
+ - `--use-existing`: allow using existing `project_id` without creating a new backend project
239
240
  - `--dry-run`: compute output without writing files or calling APIs
240
241
  - `--json`: print machine-readable result
241
242
 
@@ -256,6 +257,42 @@ npx buildx-cli project:init --project-id hello-world --name "Hello World" --app
256
257
 
257
258
  # backend + Expo app
258
259
  npx buildx-cli project:init --project-id hello-world --name "Hello World" --app expo
260
+
261
+ # existing backend project id (reuse backend, scaffold local files)
262
+ npx buildx-cli project:init --project-id hello-world --name "Hello World" --app next --use-existing
263
+ ```
264
+
265
+ Existing project behavior:
266
+ - CLI checks existing project IDs before create.
267
+ - If `project_id` already exists:
268
+ - interactive mode asks for confirmation to continue with existing backend.
269
+ - with `--use-existing`, CLI skips confirmation and continues directly.
270
+ - with `--json` and no `--use-existing`, CLI exits with error (no interactive prompt in JSON mode).
271
+
272
+ Next.js starter behavior (`--app next`):
273
+ - public/private route split remains (`app/(public)` and `app/(private)`).
274
+ - root app shell includes a reusable navbar.
275
+ - includes built-in theme mode setup (`light|dark|system`) with toggle.
276
+ - includes built-in locale setup (`en|th`) with selector.
277
+ - auth screens use shared UI pack components without forcing full-screen background, so page/layout background is controlled by the generated app.
278
+
279
+ #### `project:add-pack`
280
+ Add Buildx pack dependencies into an existing project package.
281
+
282
+ Key options:
283
+ - `--pack <ui-packs|sdk>`: pack to install
284
+ - `--version <version>`: optional version override
285
+ - `--dir <path>`: target project directory (default current directory)
286
+ - `--manager <bun|pnpm|npm|yarn>`: force package manager
287
+ - `--json`: print machine-readable result
288
+
289
+ Examples:
290
+ ```bash
291
+ # add UI packs with default version
292
+ npx buildx-cli project:add-pack --pack ui-packs
293
+
294
+ # add sdk in specific directory with pnpm
295
+ npx buildx-cli project:add-pack --pack sdk --manager pnpm --dir ./my-project
259
296
  ```
260
297
 
261
298
  Generated auth-aware structure:
@@ -265,6 +302,8 @@ Generated auth-aware structure:
265
302
  - Next.js template uses route groups for separation:
266
303
  - `app/(public)/...` (sign-in/sign-up/forgot-password)
267
304
  - `app/(private)/...` (protected dashboard)
305
+ - preserves create-next-app root `app/layout.tsx` (no hard overwrite)
306
+ - starter root `app/page.tsx` includes generic `Dashboard`, `Sign in`, and `Sign up` links with usage description
268
307
  - Expo template uses auth-state route split in `App.tsx`:
269
308
  - public screen tree for unauthenticated users
270
309
  - private screen tree for authenticated users
@@ -275,12 +314,15 @@ Generated auth-aware structure:
275
314
  UI package dependency resolution:
276
315
  - generated apps depend on package from env `BUILDX_UI_PACKS_PACKAGE`
277
316
  - default package name is `buildx-react-ui-packs`
317
+ - default package version is `^1.8.3` (override via `BUILDX_UI_PACKS_VERSION`)
278
318
  - set a scoped package before seeding when unscoped npm name is unavailable:
279
319
  - `BUILDX_UI_PACKS_PACKAGE=@your-scope/buildx-react-ui-packs npx buildx-cli project:init ...`
280
320
 
281
321
  Notes:
282
322
  - Next scaffold requires npm registry connectivity for `create-next-app`.
283
323
  - Use `--dry-run` to preview file plan without running scaffold commands.
324
+ - Generated projects are package-manager agnostic (no forced `packageManager` lock in generated `package.json`).
325
+ - Next `app/globals.css` is normalized with Tailwind `@source` to include UI pack classes from `node_modules` (prevents missing utilities like `grid-cols-2` from shared components).
284
326
 
285
327
  ### New Project Maintenance
286
328
 
package/dist/README.md CHANGED
@@ -236,6 +236,7 @@ Key options:
236
236
  - `--react-stack <vite|next|expo-web>`: required when `--app react`
237
237
  - `--out-dir <path>`: output workspace directory (default `./<project-id>`)
238
238
  - `--overwrite`: allow writing into non-empty output directory
239
+ - `--use-existing`: allow using existing `project_id` without creating a new backend project
239
240
  - `--dry-run`: compute output without writing files or calling APIs
240
241
  - `--json`: print machine-readable result
241
242
 
@@ -256,6 +257,42 @@ npx buildx-cli project:init --project-id hello-world --name "Hello World" --app
256
257
 
257
258
  # backend + Expo app
258
259
  npx buildx-cli project:init --project-id hello-world --name "Hello World" --app expo
260
+
261
+ # existing backend project id (reuse backend, scaffold local files)
262
+ npx buildx-cli project:init --project-id hello-world --name "Hello World" --app next --use-existing
263
+ ```
264
+
265
+ Existing project behavior:
266
+ - CLI checks existing project IDs before create.
267
+ - If `project_id` already exists:
268
+ - interactive mode asks for confirmation to continue with existing backend.
269
+ - with `--use-existing`, CLI skips confirmation and continues directly.
270
+ - with `--json` and no `--use-existing`, CLI exits with error (no interactive prompt in JSON mode).
271
+
272
+ Next.js starter behavior (`--app next`):
273
+ - public/private route split remains (`app/(public)` and `app/(private)`).
274
+ - root app shell includes a reusable navbar.
275
+ - includes built-in theme mode setup (`light|dark|system`) with toggle.
276
+ - includes built-in locale setup (`en|th`) with selector.
277
+ - auth screens use shared UI pack components without forcing full-screen background, so page/layout background is controlled by the generated app.
278
+
279
+ #### `project:add-pack`
280
+ Add Buildx pack dependencies into an existing project package.
281
+
282
+ Key options:
283
+ - `--pack <ui-packs|sdk>`: pack to install
284
+ - `--version <version>`: optional version override
285
+ - `--dir <path>`: target project directory (default current directory)
286
+ - `--manager <bun|pnpm|npm|yarn>`: force package manager
287
+ - `--json`: print machine-readable result
288
+
289
+ Examples:
290
+ ```bash
291
+ # add UI packs with default version
292
+ npx buildx-cli project:add-pack --pack ui-packs
293
+
294
+ # add sdk in specific directory with pnpm
295
+ npx buildx-cli project:add-pack --pack sdk --manager pnpm --dir ./my-project
259
296
  ```
260
297
 
261
298
  Generated auth-aware structure:
@@ -265,6 +302,8 @@ Generated auth-aware structure:
265
302
  - Next.js template uses route groups for separation:
266
303
  - `app/(public)/...` (sign-in/sign-up/forgot-password)
267
304
  - `app/(private)/...` (protected dashboard)
305
+ - preserves create-next-app root `app/layout.tsx` (no hard overwrite)
306
+ - starter root `app/page.tsx` includes generic `Dashboard`, `Sign in`, and `Sign up` links with usage description
268
307
  - Expo template uses auth-state route split in `App.tsx`:
269
308
  - public screen tree for unauthenticated users
270
309
  - private screen tree for authenticated users
@@ -275,12 +314,15 @@ Generated auth-aware structure:
275
314
  UI package dependency resolution:
276
315
  - generated apps depend on package from env `BUILDX_UI_PACKS_PACKAGE`
277
316
  - default package name is `buildx-react-ui-packs`
317
+ - default package version is `^1.8.3` (override via `BUILDX_UI_PACKS_VERSION`)
278
318
  - set a scoped package before seeding when unscoped npm name is unavailable:
279
319
  - `BUILDX_UI_PACKS_PACKAGE=@your-scope/buildx-react-ui-packs npx buildx-cli project:init ...`
280
320
 
281
321
  Notes:
282
322
  - Next scaffold requires npm registry connectivity for `create-next-app`.
283
323
  - Use `--dry-run` to preview file plan without running scaffold commands.
324
+ - Generated projects are package-manager agnostic (no forced `packageManager` lock in generated `package.json`).
325
+ - Next `app/globals.css` is normalized with Tailwind `@source` to include UI pack classes from `node_modules` (prevents missing utilities like `grid-cols-2` from shared components).
284
326
 
285
327
  ### New Project Maintenance
286
328