buildx-cli 1.8.24 → 1.8.26
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 +45 -2
- package/dist/README.md +45 -2
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/package.json +1 -1
- package/package.json +1 -1
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,8 +257,45 @@ 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
|
|
259
263
|
```
|
|
260
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
|
+
- default web UI stack is HeroUI (`@heroui/react`) as primary component framework.
|
|
278
|
+
- auth screens use shared UI pack components without forcing full-screen background, so page/layout background is controlled by the generated app.
|
|
279
|
+
|
|
280
|
+
Expo starter behavior (`--app expo`):
|
|
281
|
+
- scaffold base runs `npx create-expo-app@latest` (TypeScript template) first.
|
|
282
|
+
- mobile-first scaffold with HeroUI Native (`heroui-native`) provider and starter controls.
|
|
283
|
+
- starter provider defaults disable animated-style helper noise for custom-style scaffolds:
|
|
284
|
+
- `isAnimatedStyleActive={false}`
|
|
285
|
+
- `config.devInfo.stylingPrinciples=false`
|
|
286
|
+
- includes required `heroui-native` peer dependencies: `uniwind`, `tailwind-merge`, `tailwind-variants`, `react-native-gesture-handler`, `@gorhom/bottom-sheet`.
|
|
287
|
+
- includes `react-native-worklets` dependency required by current `react-native-reanimated` chain.
|
|
288
|
+
- keeps auth state split (public/private view) and uses shared Buildx auth provider wiring.
|
|
289
|
+
- includes starter auth flows on mobile:
|
|
290
|
+
- sign-in (username/password)
|
|
291
|
+
- sign-up (name/email/tel support)
|
|
292
|
+
- EOTP request + verify
|
|
293
|
+
- forgot/reset password
|
|
294
|
+
- private change-password form
|
|
295
|
+
- after Buildx dependency rewiring, CLI runs install to ensure added packages are available immediately.
|
|
296
|
+
- CLI also runs `expo install` for native compatibility packages (`react-native-reanimated`, `react-native-safe-area-context`, `react-native-screens`, `react-native-svg`, `react-native-worklets`, `react-native-gesture-handler`, `@gorhom/bottom-sheet`) to align with Expo SDK expectations.
|
|
297
|
+
- generated Expo app includes `global.css` setup for Uniwind + HeroUI Native styles and wraps app with `GestureHandlerRootView`.
|
|
298
|
+
|
|
261
299
|
#### `project:add-pack`
|
|
262
300
|
Add Buildx pack dependencies into an existing project package.
|
|
263
301
|
|
|
@@ -281,14 +319,17 @@ Generated auth-aware structure:
|
|
|
281
319
|
- Next.js scaffold source:
|
|
282
320
|
- `project:init --app next` runs `npx create-next-app@latest` first (TypeScript + App Router)
|
|
283
321
|
- then applies Buildx auth/public-private route wiring and maintenance scripts
|
|
322
|
+
- then runs dependency install to ensure added Buildx/HeroUI packages are present before first `dev`
|
|
284
323
|
- Next.js template uses route groups for separation:
|
|
285
324
|
- `app/(public)/...` (sign-in/sign-up/forgot-password)
|
|
286
325
|
- `app/(private)/...` (protected dashboard)
|
|
287
|
-
-
|
|
326
|
+
- rewrites root `app/layout.tsx` and starter shell to include provider wiring (auth + theme + locale)
|
|
288
327
|
- starter root `app/page.tsx` includes generic `Dashboard`, `Sign in`, and `Sign up` links with usage description
|
|
289
328
|
- Expo template uses auth-state route split in `App.tsx`:
|
|
329
|
+
- `project:init --app expo` runs `npx create-expo-app@latest` first
|
|
290
330
|
- public screen tree for unauthenticated users
|
|
291
331
|
- private screen tree for authenticated users
|
|
332
|
+
- mobile-first baseline with `heroui-native` provider
|
|
292
333
|
- Scaffold layout is single-level:
|
|
293
334
|
- app package files are generated at workspace root (no `apps/web` nesting)
|
|
294
335
|
- `buildx/` artifacts are generated at root level alongside app files
|
|
@@ -296,7 +337,7 @@ Generated auth-aware structure:
|
|
|
296
337
|
UI package dependency resolution:
|
|
297
338
|
- generated apps depend on package from env `BUILDX_UI_PACKS_PACKAGE`
|
|
298
339
|
- default package name is `buildx-react-ui-packs`
|
|
299
|
-
- default package version is
|
|
340
|
+
- default package version/tag is `latest` (override via `BUILDX_UI_PACKS_VERSION`)
|
|
300
341
|
- set a scoped package before seeding when unscoped npm name is unavailable:
|
|
301
342
|
- `BUILDX_UI_PACKS_PACKAGE=@your-scope/buildx-react-ui-packs npx buildx-cli project:init ...`
|
|
302
343
|
|
|
@@ -305,6 +346,8 @@ Notes:
|
|
|
305
346
|
- Use `--dry-run` to preview file plan without running scaffold commands.
|
|
306
347
|
- Generated projects are package-manager agnostic (no forced `packageManager` lock in generated `package.json`).
|
|
307
348
|
- 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).
|
|
349
|
+
- Next starter includes `@heroui/react` by default.
|
|
350
|
+
- Expo starter includes `heroui-native` by default.
|
|
308
351
|
|
|
309
352
|
### New Project Maintenance
|
|
310
353
|
|
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,8 +257,45 @@ 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
|
|
259
263
|
```
|
|
260
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
|
+
- default web UI stack is HeroUI (`@heroui/react`) as primary component framework.
|
|
278
|
+
- auth screens use shared UI pack components without forcing full-screen background, so page/layout background is controlled by the generated app.
|
|
279
|
+
|
|
280
|
+
Expo starter behavior (`--app expo`):
|
|
281
|
+
- scaffold base runs `npx create-expo-app@latest` (TypeScript template) first.
|
|
282
|
+
- mobile-first scaffold with HeroUI Native (`heroui-native`) provider and starter controls.
|
|
283
|
+
- starter provider defaults disable animated-style helper noise for custom-style scaffolds:
|
|
284
|
+
- `isAnimatedStyleActive={false}`
|
|
285
|
+
- `config.devInfo.stylingPrinciples=false`
|
|
286
|
+
- includes required `heroui-native` peer dependencies: `uniwind`, `tailwind-merge`, `tailwind-variants`, `react-native-gesture-handler`, `@gorhom/bottom-sheet`.
|
|
287
|
+
- includes `react-native-worklets` dependency required by current `react-native-reanimated` chain.
|
|
288
|
+
- keeps auth state split (public/private view) and uses shared Buildx auth provider wiring.
|
|
289
|
+
- includes starter auth flows on mobile:
|
|
290
|
+
- sign-in (username/password)
|
|
291
|
+
- sign-up (name/email/tel support)
|
|
292
|
+
- EOTP request + verify
|
|
293
|
+
- forgot/reset password
|
|
294
|
+
- private change-password form
|
|
295
|
+
- after Buildx dependency rewiring, CLI runs install to ensure added packages are available immediately.
|
|
296
|
+
- CLI also runs `expo install` for native compatibility packages (`react-native-reanimated`, `react-native-safe-area-context`, `react-native-screens`, `react-native-svg`, `react-native-worklets`, `react-native-gesture-handler`, `@gorhom/bottom-sheet`) to align with Expo SDK expectations.
|
|
297
|
+
- generated Expo app includes `global.css` setup for Uniwind + HeroUI Native styles and wraps app with `GestureHandlerRootView`.
|
|
298
|
+
|
|
261
299
|
#### `project:add-pack`
|
|
262
300
|
Add Buildx pack dependencies into an existing project package.
|
|
263
301
|
|
|
@@ -281,14 +319,17 @@ Generated auth-aware structure:
|
|
|
281
319
|
- Next.js scaffold source:
|
|
282
320
|
- `project:init --app next` runs `npx create-next-app@latest` first (TypeScript + App Router)
|
|
283
321
|
- then applies Buildx auth/public-private route wiring and maintenance scripts
|
|
322
|
+
- then runs dependency install to ensure added Buildx/HeroUI packages are present before first `dev`
|
|
284
323
|
- Next.js template uses route groups for separation:
|
|
285
324
|
- `app/(public)/...` (sign-in/sign-up/forgot-password)
|
|
286
325
|
- `app/(private)/...` (protected dashboard)
|
|
287
|
-
-
|
|
326
|
+
- rewrites root `app/layout.tsx` and starter shell to include provider wiring (auth + theme + locale)
|
|
288
327
|
- starter root `app/page.tsx` includes generic `Dashboard`, `Sign in`, and `Sign up` links with usage description
|
|
289
328
|
- Expo template uses auth-state route split in `App.tsx`:
|
|
329
|
+
- `project:init --app expo` runs `npx create-expo-app@latest` first
|
|
290
330
|
- public screen tree for unauthenticated users
|
|
291
331
|
- private screen tree for authenticated users
|
|
332
|
+
- mobile-first baseline with `heroui-native` provider
|
|
292
333
|
- Scaffold layout is single-level:
|
|
293
334
|
- app package files are generated at workspace root (no `apps/web` nesting)
|
|
294
335
|
- `buildx/` artifacts are generated at root level alongside app files
|
|
@@ -296,7 +337,7 @@ Generated auth-aware structure:
|
|
|
296
337
|
UI package dependency resolution:
|
|
297
338
|
- generated apps depend on package from env `BUILDX_UI_PACKS_PACKAGE`
|
|
298
339
|
- default package name is `buildx-react-ui-packs`
|
|
299
|
-
- default package version is
|
|
340
|
+
- default package version/tag is `latest` (override via `BUILDX_UI_PACKS_VERSION`)
|
|
300
341
|
- set a scoped package before seeding when unscoped npm name is unavailable:
|
|
301
342
|
- `BUILDX_UI_PACKS_PACKAGE=@your-scope/buildx-react-ui-packs npx buildx-cli project:init ...`
|
|
302
343
|
|
|
@@ -305,6 +346,8 @@ Notes:
|
|
|
305
346
|
- Use `--dry-run` to preview file plan without running scaffold commands.
|
|
306
347
|
- Generated projects are package-manager agnostic (no forced `packageManager` lock in generated `package.json`).
|
|
307
348
|
- 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).
|
|
349
|
+
- Next starter includes `@heroui/react` by default.
|
|
350
|
+
- Expo starter includes `heroui-native` by default.
|
|
308
351
|
|
|
309
352
|
### New Project Maintenance
|
|
310
353
|
|