Crear un proyecto
Modo interactivo, scaffold reproducible, shell Astro y TypeScript generado.
Consulta las versiones, cambios y requisitos en Framework 4.0 y CLI 1.2.
Creación reproducible
wu create conocimiento --template react --shell astro
El modo rápido se activa cuando hay un nombre y una plantilla. Escribe conocimiento/, un shell Astro, una microapp React llamada conocimiento, configuración y manifiestos. Este modo no instala dependencias. Al terminar propone entrar en la carpeta y ejecutar wu install y wu dev.
conocimiento/
.gitignore
package.json
wu.config.json
shell/
package.json
astro.config.mjs
src/pages/index.astro
src/styles/wu-shell.css
mf-conocimiento/
package.json
index.html
vite.config.js
src/main.tsx
src/App.tsx
La estructura muestra los archivos principales de esa combinación. Otros frameworks eligen extensiones, componentes y configuraciones distintos. El generador no escribe un wu.json fuente: el servidor de desarrollo puede sintetizarlo y el build escribe el manifiesto de producción. Crea uno explícito cuando la app necesite declarar contratos o permisos.
El proyecto nuevo incluye .gitignore para dependencias, builds, cachés, logs, claves PEM y .env, manteniendo .env.example. wu upgrade puede añadir esas reglas a un proyecto anterior sin reemplazar las existentes.
Opciones reconocidas
| Argumento | Alias | Efecto |
|---|---|---|
| Nombre posicional | — | Directorio del proyecto y nombre de la primera app en modo rápido |
--template <framework> |
-t |
Framework de la microapp generada |
--shell <framework> |
-s |
Framework del shell en modo rápido |
Si omites --shell, el shell usa la selección de --template; la forma concreta puede ser un shell del framework o uno agnóstico. --shell sin --template no configura el asistente: el flujo interactivo vuelve a pedir el shell.
No existe --no-install para create, porque el modo rápido ya deja la instalación pendiente. Tampoco hay flags públicos --typescript, --yes, --package-manager o --apps. Usa únicamente el contrato de la tabla para automatizar esta versión.
Asistente interactivo
wu create
El asistente utiliza modo raw de terminal. Solicita nombre, shell y microapps una por una; ofrece TypeScript donde la plantilla lo admite. Los puertos de apps empiezan en 5001 y se incrementan. El flujo interactivo admite hasta 16 apps; para una topología mayor se usa configuración explícita.
El asistente pide confirmar generación e instalación y ejecuta wu install. Una instalación fallida devuelve 1; sin terminal también devuelve 1 y muestra el modo rápido. Ctrl+C cancela con 130. El modo rápido continúa sin instalar dependencias.
Nombres y validaciones
La creación rechaza un directorio existente con salida 1. Una plantilla desconocida también falla. Astro y Next están en el catálogo del shell, pero son rechazados como --template de una microapp.
Los nombres de app se normalizan y validan con ^[a-z][a-z0-9-]{0,31}$, sin nombres reservados de Windows. El proyecto admite hasta 64 caracteres, sin rutas ni espacios; la primera app del modo rápido debe cumplir además su límite de 32. Un fallo de generación no deja el directorio parcial.
Astro dentro del proyecto WU
Astro compila el shell con su propio bundler. WU sirve esa salida y monta las microapps desde sus entradas WU. El scaffold no convierte a React o Vue en islas Astro: la composición entre aplicaciones pertenece al runtime WU.
El shell generado importa su hoja CSS, inicializa el framework y consume el catálogo de apps que la CLI inserta. La configuración declara npx astro dev y npx astro build. En modo de desarrollo nativo, WU utiliza la salida del build de Astro y la reconstruye cuando cambian sus fuentes.
Referencia de implementación
wu-cli/src/commands/create.zigwu-cli/src/config/names.zigwu-cli/src/config/catalog.zigwu-cli/src/commands/templates/astro-shell.index.astrowu-cli/tests/create-exit-code.test.cjswu-cli/tests/wizard-keys.test.cjswu-cli/tests/gitignore.test.cjs