scaffold
andurel generate scaffold creates a full resource from an existing table migration: constructed model API, entity and data types, optional factory, controller, typed routes, and views or Inertia pages.
When to use
- Add a full resource when the matching migration already exists under
migrations/. - Prefer model or controller when you only need one layer.
Usage
1andurel generate scaffold NAME [flags]
NAME is CamelCase. One lowercase namespace segment is allowed (admin/Widget). Namespaced scaffolds place controllers under controllers/admin, use admin.* route names, and Admin-prefixed symbols.
Flags
| Flag | What it does |
|---|---|
--api |
Generate a JSON API controller under controllers/api instead of UI pages |
--primary-key |
Specify the primary key column (skips interactive detection) |
--table-name |
Override the default table name derived from NAME |
--skip-factory |
Skip generating a factory for the model |
--dry-run / --diff |
Preview without writing; see generate for shared flags |
Without --api, generation follows the project UI in andurel.lock (Inertia adapter or Templ).
Examples
1andurel generate scaffold Product --dry-run --diff --json
2andurel generate scaffold Product
3andurel generate scaffold admin/Widget
4andurel generate scaffold Product --api
5andurel generate scaffold Product --table-name catalog_products --primary-key id
A typical scaffold writes:
models/product.goand related query SQLmodels/factoriesentry (unless--skip-factory)controllers/products.go(orcontrollers/api/ namespaced path)router/routes/products.go- Templ views or Inertia pages for the configured adapter
Next
1andurel sync routes --json
2andurel sync payloads --json
3andurel doctor --json
See Generators for Inertia payload and TypeScript flow, and migration when the table does not exist yet.