@cristiancorreau/forge 2.15.0 → 2.16.0

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.
Files changed (40) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/assets/core/schemas/project.schema.json +16 -1
  3. package/assets/manifest.json +1 -1
  4. package/dist/commands/init.d.ts +2 -0
  5. package/dist/commands/init.d.ts.map +1 -1
  6. package/dist/commands/init.js +12 -4
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/lib/detect.d.ts +6 -0
  9. package/dist/lib/detect.d.ts.map +1 -1
  10. package/dist/lib/detect.js +17 -1
  11. package/dist/lib/detect.js.map +1 -1
  12. package/dist/lib/generators/claude-code.d.ts.map +1 -1
  13. package/dist/lib/generators/claude-code.js +7 -2
  14. package/dist/lib/generators/claude-code.js.map +1 -1
  15. package/dist/lib/generators/codex.d.ts.map +1 -1
  16. package/dist/lib/generators/codex.js +3 -2
  17. package/dist/lib/generators/codex.js.map +1 -1
  18. package/dist/lib/generators/kiro.d.ts.map +1 -1
  19. package/dist/lib/generators/kiro.js +3 -2
  20. package/dist/lib/generators/kiro.js.map +1 -1
  21. package/dist/lib/generators/opencode.d.ts.map +1 -1
  22. package/dist/lib/generators/opencode.js +3 -2
  23. package/dist/lib/generators/opencode.js.map +1 -1
  24. package/dist/lib/wizard-flow.d.ts +57 -0
  25. package/dist/lib/wizard-flow.d.ts.map +1 -0
  26. package/dist/lib/wizard-flow.js +99 -0
  27. package/dist/lib/wizard-flow.js.map +1 -0
  28. package/dist/lib/wizard.d.ts +8 -0
  29. package/dist/lib/wizard.d.ts.map +1 -1
  30. package/dist/lib/wizard.js +133 -76
  31. package/dist/lib/wizard.js.map +1 -1
  32. package/dist/lib/yaml.d.ts +6 -0
  33. package/dist/lib/yaml.d.ts.map +1 -1
  34. package/dist/lib/yaml.js.map +1 -1
  35. package/dist/tui/wizard.d.ts.map +1 -1
  36. package/dist/tui/wizard.js +95 -40
  37. package/dist/tui/wizard.js.map +1 -1
  38. package/dist/version.d.ts +1 -1
  39. package/dist/version.js +1 -1
  40. package/package.json +2 -2
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Pure helpers shared by both wizards (OpenTUI `tui/wizard.ts` and the @clack
3
+ * fallback `lib/wizard.ts`) and exercised directly by the test suite.
4
+ *
5
+ * The wizard now asks the PROJECT TYPE first (frontend · backend · fullstack)
6
+ * and then the LANGUAGE + FRAMEWORK separately per side, with the framework list
7
+ * FILTERED by the chosen language. The data model stays backward-compatible:
8
+ * `project.language` is DERIVED from the per-side languages.
9
+ */
10
+ /** Backend frameworks by language. Used to filter the framework picker. */
11
+ export const BACKEND_BY_LANG = {
12
+ typescript: ['hono', 'express', 'nestjs', 'fastify'],
13
+ python: ['fastapi', 'django'],
14
+ ruby: ['rails'],
15
+ go: ['go-gin'],
16
+ php: ['laravel'],
17
+ };
18
+ /** Frontend frameworks by language. Frontend is TypeScript/JS only today. */
19
+ export const FRONTEND_BY_LANG = {
20
+ typescript: ['nextjs', 'astro', 'sveltekit', 'nuxt'],
21
+ };
22
+ /** Languages offered for the backend side. */
23
+ export const BACKEND_LANGUAGES = ['typescript', 'python', 'ruby', 'go', 'php'];
24
+ /** Languages offered for the frontend side. */
25
+ export const FRONTEND_LANGUAGES = ['typescript'];
26
+ /** True when the project type implies a backend side. */
27
+ export function hasBackend(type) {
28
+ return type === 'backend' || type === 'fullstack';
29
+ }
30
+ /** True when the project type implies a frontend side. */
31
+ export function hasFrontend(type) {
32
+ return type === 'frontend' || type === 'fullstack';
33
+ }
34
+ /** Backend framework values valid for a language (always includes the escape). */
35
+ export function backendFrameworksFor(language) {
36
+ return BACKEND_BY_LANG[language] ?? [];
37
+ }
38
+ /** Frontend framework values valid for a language. */
39
+ export function frontendFrameworksFor(language) {
40
+ return FRONTEND_BY_LANG[language] ?? [];
41
+ }
42
+ /**
43
+ * Derive the legacy `project.language` from the per-side languages, per the
44
+ * backward-compat rule:
45
+ * - backend / fullstack → the backend language
46
+ * - frontend-only → the frontend language
47
+ * - fullstack with differing sides → 'mixed'
48
+ * Falls back to 'typescript' when nothing is known.
49
+ */
50
+ export function deriveProjectLanguage(args) {
51
+ const { type, backendLanguage, frontendLanguage } = args;
52
+ if (type === 'frontend')
53
+ return frontendLanguage ?? 'typescript';
54
+ if (type === 'backend')
55
+ return backendLanguage ?? 'typescript';
56
+ // fullstack
57
+ if (backendLanguage && frontendLanguage) {
58
+ return backendLanguage === frontendLanguage ? backendLanguage : 'mixed';
59
+ }
60
+ return backendLanguage ?? frontendLanguage ?? 'typescript';
61
+ }
62
+ /**
63
+ * Infer the project type from what was detected/declared. Best-effort, used by
64
+ * detect.ts and to back-fill old project.yaml files that lack `project.type`.
65
+ */
66
+ export function inferProjectType(args) {
67
+ const hasB = !!args.backend;
68
+ const hasF = !!args.frontend;
69
+ if (hasB && hasF)
70
+ return 'fullstack';
71
+ if (hasF && !hasB)
72
+ return 'frontend';
73
+ // backend, or nothing detected → default to backend (DB/ORM stay available).
74
+ return 'backend';
75
+ }
76
+ /** Human label for a language, used in generated docs (CLAUDE.md/AGENTS.md). */
77
+ export function languageLabel(language) {
78
+ const map = {
79
+ typescript: 'TypeScript',
80
+ python: 'Python',
81
+ ruby: 'Ruby',
82
+ go: 'Go',
83
+ php: 'PHP',
84
+ mixed: 'mixed',
85
+ };
86
+ return map[language] ?? language;
87
+ }
88
+ /**
89
+ * Render a stack side for generated docs: "FastAPI (Python)" when the per-side
90
+ * language is known, "FastAPI" when only the framework is known, and 'N/A' when
91
+ * the side is absent. Old project.yaml files (no per-side language) degrade to
92
+ * just the framework name.
93
+ */
94
+ export function stackWithLanguage(framework, language) {
95
+ if (!framework)
96
+ return 'N/A';
97
+ return language ? `${framework} (${languageLabel(language)})` : framework;
98
+ }
99
+ //# sourceMappingURL=wizard-flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizard-flow.js","sourceRoot":"","sources":["../../src/lib/wizard-flow.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,16 @@
1
+ import { type ProjectType } from './wizard-flow.js';
1
2
  export interface WizardResult {
2
3
  name: string;
3
4
  slug: string;
4
5
  description: string;
6
+ /** Derived legacy language (backend lang, frontend lang, or 'mixed'). */
5
7
  language: string;
8
+ /** Project type: solo frontend, solo backend o fullstack. */
9
+ type: ProjectType;
10
+ /** Backend language (only when the project has a backend). */
11
+ backendLanguage?: string;
12
+ /** Frontend language (only when the project has a frontend). */
13
+ frontendLanguage?: string;
6
14
  mode: 'startup' | 'standard' | 'enterprise';
7
15
  backend?: string;
8
16
  frontend?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/lib/wizard.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAmHD,wBAAsB,SAAS,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAgN9D"}
1
+ {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/lib/wizard.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;IACjB,6DAA6D;IAC7D,IAAI,EAAE,WAAW,CAAC;IAClB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AA6ID,wBAAsB,SAAS,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAsP9D"}
@@ -4,29 +4,52 @@ import { detectStack } from './detect.js';
4
4
  import { SKILLS } from './catalog.js';
5
5
  import { forgeBanner } from '../ui/banner.js';
6
6
  import { VERSION } from '../version.js';
7
+ import { hasBackend, hasFrontend, backendFrameworksFor, frontendFrameworksFor, deriveProjectLanguage, } from './wizard-flow.js';
7
8
  // ─── Options tables ──────────────────────────────────────────────────────────
8
- const BACKENDS = {
9
- typescript: [
10
- { value: 'hono', label: 'Hono', hint: 'edge-ready, ultraligero' },
11
- { value: 'express', label: 'Express', hint: 'el clásico' },
12
- { value: 'nestjs', label: 'NestJS', hint: 'enterprise, opinionado' },
13
- { value: 'fastify', label: 'Fastify', hint: 'rápido, plugins' },
14
- { value: 'none', label: 'Ninguno' },
15
- ],
16
- python: [{ value: 'fastapi', label: 'FastAPI', hint: 'async' }, { value: 'django', label: 'Django' }, { value: 'none', label: 'Ninguno' }],
17
- ruby: [{ value: 'rails', label: 'Rails' }, { value: 'none', label: 'Ninguno' }],
18
- go: [{ value: 'go-gin', label: 'Gin' }, { value: 'none', label: 'Ninguno' }],
19
- php: [{ value: 'laravel', label: 'Laravel' }, { value: 'none', label: 'Ninguno' }],
9
+ // Per-framework option metadata (label + hint). The wizard builds the actual
10
+ // picker by FILTERING these by the chosen per-side language (wizard-flow maps).
11
+ const BACKEND_META = {
12
+ hono: { label: 'Hono', hint: 'edge-ready, ultraligero' },
13
+ express: { label: 'Express', hint: 'el clásico' },
14
+ nestjs: { label: 'NestJS', hint: 'enterprise, opinionado' },
15
+ fastify: { label: 'Fastify', hint: 'rápido, plugins' },
16
+ fastapi: { label: 'FastAPI', hint: 'async' },
17
+ django: { label: 'Django' },
18
+ rails: { label: 'Rails' },
19
+ 'go-gin': { label: 'Gin' },
20
+ laravel: { label: 'Laravel' },
20
21
  };
21
- const FRONTENDS = {
22
- typescript: [
23
- { value: 'nextjs', label: 'Next.js', hint: 'fullstack React' },
24
- { value: 'astro', label: 'Astro', hint: 'content-first' },
25
- { value: 'nuxt', label: 'Nuxt', hint: 'Vue' },
26
- { value: 'sveltekit', label: 'SvelteKit', hint: 'Svelte' },
27
- { value: 'none', label: 'Ninguno' },
28
- ],
22
+ const FRONTEND_META = {
23
+ nextjs: { label: 'Next.js', hint: 'fullstack React' },
24
+ astro: { label: 'Astro', hint: 'content-first' },
25
+ nuxt: { label: 'Nuxt', hint: 'Vue' },
26
+ sveltekit: { label: 'SvelteKit', hint: 'Svelte' },
29
27
  };
28
+ const BACKEND_LANG_OPTS = [
29
+ { value: 'typescript', label: 'TypeScript / JavaScript', hint: 'recomendado' },
30
+ { value: 'python', label: 'Python' },
31
+ { value: 'ruby', label: 'Ruby' },
32
+ { value: 'go', label: 'Go' },
33
+ { value: 'php', label: 'PHP' },
34
+ ];
35
+ const FRONTEND_LANG_OPTS = [
36
+ { value: 'typescript', label: 'TypeScript / JavaScript', hint: 'recomendado' },
37
+ ];
38
+ /** Build a framework picker (filtered by language) + the "ninguno / otro" escape. */
39
+ function backendFrameworkOptions(language) {
40
+ const opts = backendFrameworksFor(language).map(v => ({
41
+ value: v, label: BACKEND_META[v]?.label ?? v, hint: BACKEND_META[v]?.hint,
42
+ }));
43
+ opts.push({ value: 'none', label: 'Ninguno / otro' });
44
+ return opts;
45
+ }
46
+ function frontendFrameworkOptions(language) {
47
+ const opts = frontendFrameworksFor(language).map(v => ({
48
+ value: v, label: FRONTEND_META[v]?.label ?? v, hint: FRONTEND_META[v]?.hint,
49
+ }));
50
+ opts.push({ value: 'none', label: 'Ninguno / otro' });
51
+ return opts;
52
+ }
30
53
  const ORMS = {
31
54
  typescript: [
32
55
  { value: 'drizzle', label: 'Drizzle ORM', hint: 'ligero, type-safe' },
@@ -153,67 +176,85 @@ export async function runWizard() {
153
176
  message: 'Descripción breve',
154
177
  placeholder: 'Describe tu proyecto en una línea',
155
178
  }));
156
- // ── Tech stack ──
157
- step(2, 4, 'Stack técnico');
158
- const language = check(await p.select({
159
- message: 'Lenguaje principal',
160
- initialValue: detected.language ?? 'typescript',
161
- options: [
162
- { value: 'typescript', label: 'TypeScript / JavaScript', hint: 'recomendado' },
163
- { value: 'python', label: 'Python' },
164
- { value: 'ruby', label: 'Ruby' },
165
- { value: 'go', label: 'Go' },
166
- { value: 'php', label: 'PHP' },
167
- ],
168
- }));
169
- const mode = check(await p.select({
170
- message: 'Modo del proyecto',
171
- initialValue: 'standard',
179
+ // ── Tipo de proyecto (PRIMERO, justo después del nombre) ──
180
+ // Determina qué lados (backend/frontend) se preguntan. Si se detectó stack,
181
+ // se pre-selecciona el tipo inferido.
182
+ const detectedType = detected.backend && detected.frontend ? 'fullstack'
183
+ : detected.frontend ? 'frontend'
184
+ : detected.backend ? 'backend'
185
+ : undefined;
186
+ const type = check(await p.select({
187
+ message: 'Tipo de proyecto',
188
+ initialValue: detectedType ?? 'fullstack',
172
189
  options: [
173
- { value: 'startup', label: 'startup', hint: 'mínimo viable, equipo pequeño' },
174
- { value: 'standard', label: 'standard', hint: 'CI/CD, code review, testing' },
175
- { value: 'enterprise', label: 'enterprise', hint: 'compliance, auditoría, multi-equipo' },
190
+ { value: 'frontend', label: 'Solo Frontend', hint: 'UI / SPA / SSR' },
191
+ { value: 'backend', label: 'Solo Backend', hint: 'API / servicio' },
192
+ { value: 'fullstack', label: 'Fullstack', hint: 'frontend + backend (pueden diferir)' },
176
193
  ],
177
194
  }));
178
- const backendOpts = BACKENDS[language] ?? [{ value: 'none', label: 'Ninguno' }];
179
- const backendVal = check(await p.select({
180
- message: 'Framework backend',
181
- initialValue: detected.backend ?? backendOpts[0].value,
182
- options: backendOpts,
183
- }));
184
- const backend = backendVal === 'none' ? undefined : backendVal;
185
- const frontendOpts = FRONTENDS[language];
195
+ // ── Stack técnico ──
196
+ step(2, 4, 'Stack técnico');
197
+ // Backend: lenguaje → framework (filtrado por lenguaje). Solo si aplica.
198
+ let backendLanguage;
199
+ let backend;
200
+ if (hasBackend(type)) {
201
+ backendLanguage = check(await p.select({
202
+ message: 'Lenguaje del backend',
203
+ initialValue: detected.language ?? 'typescript',
204
+ options: BACKEND_LANG_OPTS,
205
+ }));
206
+ const backendVal = check(await p.select({
207
+ message: 'Framework backend',
208
+ initialValue: detected.backend ?? 'none',
209
+ options: backendFrameworkOptions(backendLanguage),
210
+ }));
211
+ backend = backendVal === 'none' ? undefined : backendVal;
212
+ }
213
+ // Frontend: lenguaje → framework (filtrado por lenguaje). Solo si aplica.
214
+ let frontendLanguage;
186
215
  let frontend;
187
- if (frontendOpts) {
188
- const v = check(await p.select({
216
+ if (hasFrontend(type)) {
217
+ frontendLanguage = check(await p.select({
218
+ message: 'Lenguaje del frontend',
219
+ initialValue: detected.frontend ? 'typescript' : 'typescript',
220
+ options: FRONTEND_LANG_OPTS,
221
+ }));
222
+ const frontendVal = check(await p.select({
189
223
  message: 'Framework frontend',
190
224
  initialValue: detected.frontend ?? 'none',
191
- options: frontendOpts,
225
+ options: frontendFrameworkOptions(frontendLanguage),
192
226
  }));
193
- frontend = v === 'none' ? undefined : v;
227
+ frontend = frontendVal === 'none' ? undefined : frontendVal;
194
228
  }
195
- const dbVal = check(await p.select({
196
- message: 'Base de datos',
197
- initialValue: detected.database ?? 'postgresql',
198
- options: [
199
- { value: 'postgresql', label: 'PostgreSQL', hint: 'recomendado' },
200
- { value: 'mysql', label: 'MySQL / MariaDB' },
201
- { value: 'sqlite', label: 'SQLite', hint: 'dev/embedded' },
202
- { value: 'none', label: 'Ninguna' },
203
- ],
204
- }));
205
- const database = dbVal === 'none' ? undefined : dbVal;
229
+ // Lenguaje para ORM / package manager / testing: el del backend si existe,
230
+ // si no el del frontend.
231
+ const stackLanguage = backendLanguage ?? frontendLanguage ?? 'typescript';
232
+ // Database / ORM — solo cuando hay backend.
233
+ let database;
206
234
  let orm;
207
- const ormOpts = ORMS[language];
208
- if (database && ormOpts) {
209
- const v = check(await p.select({
210
- message: 'ORM / query builder',
211
- initialValue: detected.orm ?? ormOpts[0].value,
212
- options: ormOpts,
235
+ if (hasBackend(type)) {
236
+ const dbVal = check(await p.select({
237
+ message: 'Base de datos',
238
+ initialValue: detected.database ?? 'postgresql',
239
+ options: [
240
+ { value: 'postgresql', label: 'PostgreSQL', hint: 'recomendado' },
241
+ { value: 'mysql', label: 'MySQL / MariaDB' },
242
+ { value: 'sqlite', label: 'SQLite', hint: 'dev/embedded' },
243
+ { value: 'none', label: 'Ninguna' },
244
+ ],
213
245
  }));
214
- orm = v === 'none' ? undefined : v;
246
+ database = dbVal === 'none' ? undefined : dbVal;
247
+ const ormOpts = ORMS[backendLanguage ?? 'typescript'];
248
+ if (database && ormOpts) {
249
+ const v = check(await p.select({
250
+ message: 'ORM / query builder',
251
+ initialValue: detected.orm ?? ormOpts[0].value,
252
+ options: ormOpts,
253
+ }));
254
+ orm = v === 'none' ? undefined : v;
255
+ }
215
256
  }
216
- const pmOpts = PKG_MANAGERS[language];
257
+ const pmOpts = PKG_MANAGERS[stackLanguage];
217
258
  let packageManager;
218
259
  if (pmOpts) {
219
260
  const v = check(await p.select({
@@ -223,7 +264,7 @@ export async function runWizard() {
223
264
  }));
224
265
  packageManager = v === 'none' ? undefined : v;
225
266
  }
226
- const testOpts = TESTING_OPTS[language];
267
+ const testOpts = TESTING_OPTS[stackLanguage];
227
268
  let testing = detected.testing;
228
269
  if (testOpts) {
229
270
  const v = check(await p.multiselect({
@@ -234,6 +275,19 @@ export async function runWizard() {
234
275
  }));
235
276
  testing = v;
236
277
  }
278
+ // ── Modo ──
279
+ const mode = check(await p.select({
280
+ message: 'Modo del proyecto',
281
+ initialValue: 'standard',
282
+ options: [
283
+ { value: 'startup', label: 'startup', hint: 'mínimo viable, equipo pequeño' },
284
+ { value: 'standard', label: 'standard', hint: 'CI/CD, code review, testing' },
285
+ { value: 'enterprise', label: 'enterprise', hint: 'compliance, auditoría, multi-equipo' },
286
+ ],
287
+ }));
288
+ // Lenguaje legacy derivado (back-compat): back/fullstack → backend lang,
289
+ // frontend-only → frontend lang, fullstack con lados distintos → 'mixed'.
290
+ const language = deriveProjectLanguage({ type, backendLanguage, frontendLanguage });
237
291
  // ── Runtime ──
238
292
  step(3, 4, 'Runtime de IA');
239
293
  const runtime = check(await p.select({
@@ -260,12 +314,14 @@ export async function runWizard() {
260
314
  }));
261
315
  // ── Confirmación ──
262
316
  // Tidy, label-aligned summary box (right-padded keys so the values line up).
263
- const row = (k, v) => ` ${chalk.dim(k.padEnd(10))} ${v}`;
317
+ const row = (k, v) => ` ${chalk.dim(k.padEnd(14))} ${v}`;
318
+ const backendStr = backend ? `${backend}${backendLanguage ? ` (${backendLanguage})` : ''}` : '';
319
+ const frontendStr = frontend ? `${frontend}${frontendLanguage ? ` (${frontendLanguage})` : ''}` : '';
264
320
  const summary = [
265
321
  row('Nombre', chalk.bold(name)),
266
- row('Lenguaje', `${language} ${chalk.dim('Modo:')} ${mode}`),
267
- backend ? row('Backend', backend) : '',
268
- frontend ? row('Frontend', frontend) : '',
322
+ row('Tipo', `${type} ${chalk.dim('Lenguaje:')} ${language} ${chalk.dim('Modo:')} ${mode}`),
323
+ backendStr ? row('Backend', backendStr) : '',
324
+ frontendStr ? row('Frontend', frontendStr) : '',
269
325
  database ? row('Base de datos', `${database}${orm ? ' + ' + orm : ''}`) : '',
270
326
  testing.length ? row('Testing', testing.join(', ')) : '',
271
327
  row('Runtime', runtime),
@@ -285,7 +341,8 @@ export async function runWizard() {
285
341
  profiles.push(PROFILE_MAP[key]);
286
342
  }
287
343
  return {
288
- name, slug, description: description || '', language, mode,
344
+ name, slug, description: description || '', language, type,
345
+ backendLanguage, frontendLanguage, mode,
289
346
  backend, frontend, database, orm, packageManager, testing,
290
347
  profiles: [...new Set(profiles)], skills, runtime, detected: hasDetection,
291
348
  };
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/lib/wizard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAoBxC,gFAAgF;AAEhF,MAAM,QAAQ,GAAuC;IACnD,UAAU,EAAE;QACV,EAAE,KAAK,EAAE,MAAM,EAAK,KAAK,EAAE,MAAM,EAAK,IAAI,EAAE,yBAAyB,EAAE;QACvE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE;QAC1D,EAAE,KAAK,EAAE,QAAQ,EAAG,KAAK,EAAE,QAAQ,EAAG,IAAI,EAAE,wBAAwB,EAAE;QACtE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE;QAC/D,EAAE,KAAK,EAAE,MAAM,EAAK,KAAK,EAAE,SAAS,EAAE;KACvC;IACD,MAAM,EAAM,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC9I,IAAI,EAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAI,KAAK,EAAE,OAAO,EAAE,EAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACzF,EAAE,EAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAG,KAAK,EAAE,KAAK,EAAE,EAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACzF,GAAG,EAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;CAC1F,CAAC;AAEF,MAAM,SAAS,GAAuC;IACpD,UAAU,EAAE;QACV,EAAE,KAAK,EAAE,QAAQ,EAAK,KAAK,EAAE,SAAS,EAAK,IAAI,EAAE,iBAAiB,EAAE;QACpE,EAAE,KAAK,EAAE,OAAO,EAAM,KAAK,EAAE,OAAO,EAAO,IAAI,EAAE,eAAe,EAAE;QAClE,EAAE,KAAK,EAAE,MAAM,EAAO,KAAK,EAAE,MAAM,EAAQ,IAAI,EAAE,KAAK,EAAE;QACxD,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAG,IAAI,EAAE,QAAQ,EAAE;QAC3D,EAAE,KAAK,EAAE,MAAM,EAAO,KAAK,EAAE,SAAS,EAAE;KACzC;CACF,CAAC;AAEF,MAAM,IAAI,GAAuC;IAC/C,UAAU,EAAE;QACV,EAAE,KAAK,EAAE,SAAS,EAAI,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,mBAAmB,EAAE;QACvE,EAAE,KAAK,EAAE,QAAQ,EAAK,KAAK,EAAE,QAAQ,EAAQ,IAAI,EAAE,sBAAsB,EAAE;QAC3E,EAAE,KAAK,EAAE,SAAS,EAAI,KAAK,EAAE,SAAS,EAAE;QACxC,EAAE,KAAK,EAAE,MAAM,EAAO,KAAK,EAAE,SAAS,EAAE;KACzC;IACD,MAAM,EAAM,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC/F,IAAI,EAAQ,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;CACtG,CAAC;AAEF,MAAM,YAAY,GAAuC;IACvD,UAAU,EAAE;QACV,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,EAAE;QAC1E,EAAE,KAAK,EAAE,KAAK,EAAG,KAAK,EAAE,KAAK,EAAE;QAC/B,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;QAChC,EAAE,KAAK,EAAE,KAAK,EAAG,KAAK,EAAE,KAAK,EAAG,IAAI,EAAE,cAAc,EAAE;KACvD;IACD,MAAM,EAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAK,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACrF,IAAI,EAAQ,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACpD,EAAE,EAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAM,KAAK,EAAE,YAAY,EAAE,CAAC;IACtD,GAAG,EAAS,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;CACvD,CAAC;AAEF,MAAM,YAAY,GAAuC;IACvD,UAAU,EAAE;QACV,EAAE,KAAK,EAAE,QAAQ,EAAM,KAAK,EAAE,QAAQ,EAAM,IAAI,EAAE,kBAAkB,EAAE;QACtE,EAAE,KAAK,EAAE,MAAM,EAAQ,KAAK,EAAE,MAAM,EAAE;QACtC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAG,IAAI,EAAE,KAAK,EAAE;QAC1D,EAAE,KAAK,EAAE,SAAS,EAAK,KAAK,EAAE,SAAS,EAAM,IAAI,EAAE,KAAK,EAAE;KAC3D;IACD,MAAM,EAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClD,IAAI,EAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAG,KAAK,EAAE,OAAO,EAAE,CAAC;IACjD,GAAG,EAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;CACrD,CAAC;AAEF,MAAM,WAAW,GAA2B;IAC1C,IAAI,EAAK,cAAc;IACvB,MAAM,EAAG,cAAc;IACvB,KAAK,EAAI,OAAO;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAI,OAAO;IAChB,OAAO,EAAE,SAAS;CACnB,CAAC;AAEF,qDAAqD;AACrD,MAAM,cAAc,GAAa,CAAC,MAAM,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;AAE3E,SAAS,MAAM,CAAC,IAAY;IAC1B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,MAAM;IACb,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,KAAK,CAAI,CAAa;IAC7B,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,EAAE,CAAC;IAC5B,OAAO,CAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB;IACxB,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,GAAG,MAAM,GAAG,IAAI;QACpB,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI;QACzF,KAAK,CAAC,GAAG,CAAC,uCAAuC,CAAC,GAAG,IAAI,CAC1D,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,IAAI,CAAC,CAAS,EAAE,KAAa,EAAE,KAAa;IACnD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;AAC7F,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,gFAAgF;IAChF,4CAA4C;IAC5C,iBAAiB,EAAE,CAAC;IACpB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;IAE3D,iDAAiD;IACjD,CAAC,CAAC,IAAI,CACJ;QACE,sEAAsE;QACtE,iEAAiE;QACjE,EAAE;QACF,2BAA2B;QAC3B,2CAA2C;QAC3C,kDAAkD;QAClD,8CAA8C;QAC9C,4CAA4C;QAC5C,wCAAwC;QACxC,EAAE;QACF,gEAAgE;QAChE,wCAAwC;KACzC,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,oBAAoB,CACrB,CAAC;IAEF,oBAAoB;IACpB,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC;IAE1F,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG;YACpB,QAAQ,CAAC,QAAQ,IAAO,aAAa,QAAQ,CAAC,QAAQ,EAAE;YACxD,QAAQ,CAAC,OAAO,IAAQ,YAAY,QAAQ,CAAC,OAAO,EAAE;YACtD,QAAQ,CAAC,QAAQ,IAAO,aAAa,QAAQ,CAAC,QAAQ,EAAE;YACxD,QAAQ,CAAC,cAAc,IAAI,oBAAoB,QAAQ,CAAC,cAAc,EAAE;YACxE,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,YAAY,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACrE,CAAC,MAAM,CAAC,OAAO,CAAa,CAAC;QAC9B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,0CAA0C,CAAC,CAAC;IAC/E,CAAC;IAED,iBAAiB;IACjB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IACvB,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QAC9B,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,aAAa;QAC1B,QAAQ,EAAE,CAAC,CAAqB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB;KAC7F,CAAC,CAAC,CAAC;IAEJ,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QACnC,OAAO,EAAE,iBAAiB;QAC1B,WAAW,EAAE,WAAW;QACxB,YAAY,EAAE,WAAW;KAC1B,CAAC,CAAC,CAAC;IACJ,MAAM,IAAI,GAAG,SAAS,IAAI,WAAW,CAAC;IAEtC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QACrC,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,mCAAmC;KACjD,CAAC,CAAC,CAAC;IAEJ,mBAAmB;IACnB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;IAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QACpC,OAAO,EAAE,oBAAoB;QAC7B,YAAY,EAAE,QAAQ,CAAC,QAAQ,IAAI,YAAY;QAC/C,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,yBAAyB,EAAE,IAAI,EAAE,aAAa,EAAE;YAC9E,EAAE,KAAK,EAAE,QAAQ,EAAM,KAAK,EAAE,QAAQ,EAAE;YACxC,EAAE,KAAK,EAAE,MAAM,EAAQ,KAAK,EAAE,MAAM,EAAE;YACtC,EAAE,KAAK,EAAE,IAAI,EAAU,KAAK,EAAE,IAAI,EAAE;YACpC,EAAE,KAAK,EAAE,KAAK,EAAS,KAAK,EAAE,KAAK,EAAE;SACtC;KACF,CAAC,CAAW,CAAC;IAEd,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QAChC,OAAO,EAAE,mBAAmB;QAC5B,YAAY,EAAE,UAAU;QACxB,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,SAAS,EAAK,KAAK,EAAE,SAAS,EAAK,IAAI,EAAE,+BAA+B,EAAE;YACnF,EAAE,KAAK,EAAE,UAAU,EAAI,KAAK,EAAE,UAAU,EAAI,IAAI,EAAE,6BAA6B,EAAE;YACjF,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,qCAAqC,EAAE;SAC1F;KACF,CAAC,CAA0C,CAAC;IAE7C,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QACtC,OAAO,EAAE,mBAAmB;QAC5B,YAAY,EAAE,QAAQ,CAAC,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK;QACtD,OAAO,EAAE,WAAW;KACrB,CAAC,CAAW,CAAC;IACd,MAAM,OAAO,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;IAE/D,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,QAA4B,CAAC;IACjC,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,oBAAoB;YAC7B,YAAY,EAAE,QAAQ,CAAC,QAAQ,IAAI,MAAM;YACzC,OAAO,EAAE,YAAY;SACtB,CAAC,CAAW,CAAC;QACd,QAAQ,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QACjC,OAAO,EAAE,eAAe;QACxB,YAAY,EAAE,QAAQ,CAAC,QAAQ,IAAI,YAAY;QAC/C,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE;YACjE,EAAE,KAAK,EAAE,OAAO,EAAO,KAAK,EAAE,iBAAiB,EAAE;YACjD,EAAE,KAAK,EAAE,QAAQ,EAAM,KAAK,EAAE,QAAQ,EAAK,IAAI,EAAE,cAAc,EAAE;YACjE,EAAE,KAAK,EAAE,MAAM,EAAQ,KAAK,EAAE,SAAS,EAAE;SAC1C;KACF,CAAC,CAAW,CAAC;IACd,MAAM,QAAQ,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAEtD,IAAI,GAAuB,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,qBAAqB;YAC9B,YAAY,EAAE,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK;YAC9C,OAAO,EAAE,OAAO;SACjB,CAAC,CAAW,CAAC;QACd,GAAG,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACtC,IAAI,cAAkC,CAAC;IACvC,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,iBAAiB;YAC1B,YAAY,EAAE,QAAQ,CAAC,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;YACxD,OAAO,EAAE,MAAM;SAChB,CAAC,CAAW,CAAC;QACd,cAAc,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,OAAO,GAAa,QAAQ,CAAC,OAAO,CAAC;IACzC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC;YAClC,OAAO,EAAE,uBAAuB;YAChC,aAAa,EAAE,QAAQ,CAAC,OAAO;YAC/B,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAa,CAAC;QAChB,OAAO,GAAG,CAAC,CAAC;IACd,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QACnC,OAAO,EAAE,eAAe;QACxB,YAAY,EAAE,aAAa;QAC3B,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE;YACnE,EAAE,KAAK,EAAE,UAAU,EAAK,KAAK,EAAE,UAAU,EAAE;YAC3C,EAAE,KAAK,EAAE,OAAO,EAAQ,KAAK,EAAE,WAAW,EAAE;YAC5C,EAAE,KAAK,EAAE,MAAM,EAAS,KAAK,EAAE,UAAU,EAAE;SAC5C;KACF,CAAC,CAAW,CAAC;IAEd,eAAe;IACf,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;IACrB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC;QACvC,OAAO,EAAE,mBAAmB;QAC5B,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,KAAK,EAAE,CAAC,CAAC,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,OAAO;YAChB,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,OAAO,EAAE;SACrC,CAAC,CAAC;QACH,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAa,CAAC;IAEhB,qBAAqB;IACrB,6EAA6E;IAC7E,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1E,MAAM,OAAO,GAAG;QACd,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,GAAG,CAAC,UAAU,EAAE,GAAG,QAAQ,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QAC9D,OAAO,CAAE,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;QACvC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;QACzC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;QAC5E,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QACxD,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;KACtD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;IAE5C,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC,CAAC,CAAC;IAC3F,IAAI,CAAC,SAAS,EAAE,CAAC;QAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAExD,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,0CAA0C,CAAC,CAAC;IAEvE,uBAAuB;IACvB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;QACtC,IAAI,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO;QACL,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI;QAC1D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO;QACzD,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY;KAC1E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/lib/wizard.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  export interface ProjectStack {
2
2
  backend?: string;
3
+ /** Lenguaje del backend (nuevo). Permite que back y front difieran. */
4
+ backend_language?: string;
3
5
  frontend?: string;
6
+ /** Lenguaje del frontend (nuevo). Permite que back y front difieran. */
7
+ frontend_language?: string;
4
8
  database?: string;
5
9
  orm?: string;
6
10
  package_manager?: string;
@@ -70,6 +74,8 @@ export interface ProjectYaml {
70
74
  slug?: string;
71
75
  description?: string;
72
76
  language?: string;
77
+ /** Tipo de proyecto (nuevo): solo frontend, solo backend o fullstack. */
78
+ type?: 'frontend' | 'backend' | 'fullstack';
73
79
  mode: 'startup' | 'standard' | 'enterprise';
74
80
  status?: string;
75
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"yaml.d.ts","sourceRoot":"","sources":["../../src/lib/yaml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yaml.d.ts","sourceRoot":"","sources":["../../src/lib/yaml.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"yaml.js","sourceRoot":"","sources":["../../src/lib/yaml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,IAAI,MAAM,SAAS,CAAC;AAgG3B,MAAM,UAAU,eAAe,CAAC,QAAgB,OAAO,CAAC,GAAG,EAAE;IAC3D,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAChD,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACpC,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAgB,CAAC;IAC/C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAChH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC1C,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"yaml.js","sourceRoot":"","sources":["../../src/lib/yaml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,IAAI,MAAM,SAAS,CAAC;AAsG3B,MAAM,UAAU,eAAe,CAAC,QAAgB,OAAO,CAAC,GAAG,EAAE;IAC3D,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAChD,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACpC,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAgB,CAAC;IAC/C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAChH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC1C,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/tui/wizard.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AA+GrD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA4TrE"}
1
+ {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/tui/wizard.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgKrD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAiVrE"}