Docs/cliv1.0.0-rc.1

Interactive wizards

npx --no-install udiot wizard component
npx --no-install udiot wizard service
npx --no-install udiot wizard feature

Wizards ask questions, show the files they will write, and write them with the generators once you confirm. They need the optional peer inquirer (npm install --save-dev inquirer) and a terminal. -f, --force overwrites existing files; without it the wizard stops before overwriting anything.

Wizard Asks for Writes
component Name, description, props, state (with initial values), methods, tests One component (and its test)
service Name, description, a service type with standard methods (data, auth, API client, storage, logger, event), constructor dependencies, custom methods, singleton or per-injection, tests One service (and its test)
feature Kebab-case name, description, entities, and which of components, services, controllers and tests to include src/features/<name>/ with, per entity, a service, a controller, and List, Detail and Form components, plus an index.ts that re-exports them

Methods you add get typed stubs that throw Not implemented until you fill them in. Service dependencies are constructor parameters typed with the class or interface you name; the generated file has a TODO to import it. A feature with controllers also gets their services, which the controllers call.

With AI enabled (see intent-driven generation), the component wizard offers suggested props, and each wizard asks the model to extend the specification before the preview. Only well-formed suggestions are used, and you still confirm the preview.

For a non-interactive preview of one file, use generate --dry-run.

From the canonical UDIOT public documentation.Try it in the playground ↗