create-cogenta 0.0.3 → 0.1.1

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 (99) hide show
  1. package/LICENSE +373 -0
  2. package/dist/bin.d.ts +3 -0
  3. package/dist/bin.d.ts.map +1 -0
  4. package/dist/bin.js +17 -0
  5. package/dist/bin.js.map +1 -0
  6. package/dist/blueprints/association.d.ts +73 -0
  7. package/dist/blueprints/association.d.ts.map +1 -0
  8. package/dist/blueprints/association.js +176 -0
  9. package/dist/blueprints/association.js.map +1 -0
  10. package/dist/blueprints/blog.d.ts +211 -0
  11. package/dist/blueprints/blog.d.ts.map +1 -0
  12. package/dist/blueprints/blog.js +303 -0
  13. package/dist/blueprints/blog.js.map +1 -0
  14. package/dist/blueprints/content-pack.d.ts +54 -0
  15. package/dist/blueprints/content-pack.d.ts.map +1 -0
  16. package/dist/blueprints/content-pack.js +40 -0
  17. package/dist/blueprints/content-pack.js.map +1 -0
  18. package/dist/blueprints/content-packs.d.ts +10 -0
  19. package/dist/blueprints/content-packs.d.ts.map +1 -0
  20. package/dist/blueprints/content-packs.js +26 -0
  21. package/dist/blueprints/content-packs.js.map +1 -0
  22. package/dist/blueprints/documentation.d.ts +71 -0
  23. package/dist/blueprints/documentation.d.ts.map +1 -0
  24. package/dist/blueprints/documentation.js +153 -0
  25. package/dist/blueprints/documentation.js.map +1 -0
  26. package/dist/blueprints/magazine.d.ts +79 -0
  27. package/dist/blueprints/magazine.d.ts.map +1 -0
  28. package/dist/blueprints/magazine.js +163 -0
  29. package/dist/blueprints/magazine.js.map +1 -0
  30. package/dist/blueprints/portfolio.d.ts +73 -0
  31. package/dist/blueprints/portfolio.d.ts.map +1 -0
  32. package/dist/blueprints/portfolio.js +171 -0
  33. package/dist/blueprints/portfolio.js.map +1 -0
  34. package/dist/blueprints/registry.d.ts +23 -0
  35. package/dist/blueprints/registry.d.ts.map +1 -0
  36. package/dist/blueprints/registry.js +42 -0
  37. package/dist/blueprints/registry.js.map +1 -0
  38. package/dist/blueprints/restaurant.d.ts +79 -0
  39. package/dist/blueprints/restaurant.d.ts.map +1 -0
  40. package/dist/blueprints/restaurant.js +175 -0
  41. package/dist/blueprints/restaurant.js.map +1 -0
  42. package/dist/blueprints/saas.d.ts +66 -0
  43. package/dist/blueprints/saas.d.ts.map +1 -0
  44. package/dist/blueprints/saas.js +165 -0
  45. package/dist/blueprints/saas.js.map +1 -0
  46. package/dist/blueprints/vitrine.d.ts +100 -0
  47. package/dist/blueprints/vitrine.d.ts.map +1 -0
  48. package/dist/blueprints/vitrine.js +214 -0
  49. package/dist/blueprints/vitrine.js.map +1 -0
  50. package/dist/config-file.d.ts +13 -0
  51. package/dist/config-file.d.ts.map +1 -0
  52. package/dist/config-file.js +93 -0
  53. package/dist/config-file.js.map +1 -0
  54. package/dist/environment.d.ts +27 -0
  55. package/dist/environment.d.ts.map +1 -0
  56. package/dist/environment.js +91 -0
  57. package/dist/environment.js.map +1 -0
  58. package/dist/index.d.ts +37 -0
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +79 -0
  61. package/dist/index.js.map +1 -0
  62. package/dist/llm-setup.d.ts +39 -0
  63. package/dist/llm-setup.d.ts.map +1 -0
  64. package/dist/llm-setup.js +47 -0
  65. package/dist/llm-setup.js.map +1 -0
  66. package/dist/playground-reset.d.ts +27 -0
  67. package/dist/playground-reset.d.ts.map +1 -0
  68. package/dist/playground-reset.js +40 -0
  69. package/dist/playground-reset.js.map +1 -0
  70. package/dist/prompts.d.ts +30 -0
  71. package/dist/prompts.d.ts.map +1 -0
  72. package/dist/prompts.js +63 -0
  73. package/dist/prompts.js.map +1 -0
  74. package/dist/recap.d.ts +19 -0
  75. package/dist/recap.d.ts.map +1 -0
  76. package/dist/recap.js +74 -0
  77. package/dist/recap.js.map +1 -0
  78. package/dist/scaffold.d.ts +49 -0
  79. package/dist/scaffold.d.ts.map +1 -0
  80. package/dist/scaffold.js +170 -0
  81. package/dist/scaffold.js.map +1 -0
  82. package/dist/skin-flow.d.ts +35 -0
  83. package/dist/skin-flow.d.ts.map +1 -0
  84. package/dist/skin-flow.js +56 -0
  85. package/dist/skin-flow.js.map +1 -0
  86. package/dist/skin-preview.d.ts +8 -0
  87. package/dist/skin-preview.d.ts.map +1 -0
  88. package/dist/skin-preview.js +130 -0
  89. package/dist/skin-preview.js.map +1 -0
  90. package/dist/types.d.ts +19 -0
  91. package/dist/types.d.ts.map +1 -0
  92. package/dist/types.js +13 -0
  93. package/dist/types.js.map +1 -0
  94. package/dist/wizard.d.ts +17 -0
  95. package/dist/wizard.d.ts.map +1 -0
  96. package/dist/wizard.js +157 -0
  97. package/dist/wizard.js.map +1 -0
  98. package/package.json +44 -5
  99. package/README.md +0 -39
package/dist/wizard.js ADDED
@@ -0,0 +1,157 @@
1
+ import { BLUEPRINT_CONTENT_PACKS } from './blueprints/content-packs.js';
2
+ import { BLUEPRINTS, resolveBlueprint } from './blueprints/registry.js';
3
+ import { loadConfigFile } from './config-file.js';
4
+ import { checkEnvironment } from './environment.js';
5
+ import { createProviderClient, LLM_PROVIDERS, validateApiKey, } from './llm-setup.js';
6
+ import { printRecap } from './recap.js';
7
+ import { scaffoldSite } from './scaffold.js';
8
+ import { chooseSkin } from './skin-flow.js';
9
+ import { defaultAnswers } from './types.js';
10
+ async function collectAnswers(prompter, targetDir, siteName, detectedDatabases) {
11
+ const defaults = defaultAnswers(targetDir, siteName);
12
+ const name = await prompter.text('Site name', defaults.siteName);
13
+ const url = await prompter.text('Site URL', defaults.siteUrl);
14
+ const locale = await prompter.text('Primary language (locale code)', defaults.defaultLocale);
15
+ const blueprintId = await prompter.choice('Site type', BLUEPRINTS.map((entry) => ({ label: entry.label, value: entry.id })), 0);
16
+ const databaseChoices = [
17
+ { label: 'SQLite (default — you can change this later)', value: 'sqlite' },
18
+ ...(detectedDatabases.postgres
19
+ ? [{ label: 'Postgres (detected)', value: 'postgres' }]
20
+ : []),
21
+ ...(detectedDatabases.mysql ? [{ label: 'MySQL (detected)', value: 'mysql' }] : []),
22
+ ];
23
+ const databaseDriver = await prompter.choice('Database', databaseChoices, 0);
24
+ const llmChoice = await prompter.choice('LLM provider', LLM_PROVIDERS.map((entry) => ({ label: entry.label, value: entry.id })), 0);
25
+ let llmModel;
26
+ let llmApiKey;
27
+ let siteDescription;
28
+ if (llmChoice !== 'none') {
29
+ const option = LLM_PROVIDERS.find((entry) => entry.id === llmChoice);
30
+ llmModel = await prompter.text('Model', option?.defaultModel ?? '');
31
+ llmApiKey = await prompter.text('API key', '');
32
+ siteDescription = await prompter.text('Site description for AI skin generation (sector, mood, audience, brand colours — leave blank to skip and keep the default skin)', '');
33
+ }
34
+ const adminEmail = await prompter.text('Admin email', defaults.adminEmail);
35
+ return {
36
+ ...defaults,
37
+ siteName: name,
38
+ siteUrl: url,
39
+ defaultLocale: locale,
40
+ blueprintId,
41
+ databaseDriver,
42
+ llmProvider: llmChoice,
43
+ ...(llmModel === undefined || llmModel === '' ? {} : { llmModel }),
44
+ ...(llmApiKey === undefined || llmApiKey === '' ? {} : { llmApiKey }),
45
+ ...(siteDescription === undefined || siteDescription === '' ? {} : { siteDescription }),
46
+ adminEmail,
47
+ };
48
+ }
49
+ /**
50
+ * The whole ten-step wizard, orchestrated. Returns a process exit code: `0`
51
+ * a working site, `1` the environment or the install failed, `2` a `--config`
52
+ * file was invalid.
53
+ */
54
+ export async function runWizard(options) {
55
+ const { out, prompter } = options;
56
+ const env = options.env ?? process.env;
57
+ const environment = await checkEnvironment({ targetDir: options.targetDir, env });
58
+ out.heading('Environment');
59
+ for (const check of environment.checks) {
60
+ if (check.status === 'ok')
61
+ out.ok(check.message);
62
+ else if (check.status === 'warn')
63
+ out.warn(check.message);
64
+ else
65
+ out.bad(check.message);
66
+ }
67
+ if (!environment.ok) {
68
+ out.line();
69
+ out.line('Fix the problem above and run this again.');
70
+ prompter.close();
71
+ return 1;
72
+ }
73
+ let answers;
74
+ if (options.configPath !== undefined) {
75
+ try {
76
+ answers = await loadConfigFile(options.configPath, options.targetDir);
77
+ }
78
+ catch (error) {
79
+ out.bad(error instanceof Error ? error.message : String(error));
80
+ prompter.close();
81
+ return 2;
82
+ }
83
+ }
84
+ else {
85
+ answers = await collectAnswers(prompter, options.targetDir, options.siteName, {
86
+ postgres: environment.detectedDatabases.includes('postgres'),
87
+ mysql: environment.detectedDatabases.includes('mysql'),
88
+ });
89
+ }
90
+ const resolvedBlueprint = resolveBlueprint(answers.blueprintId);
91
+ let keyValidation;
92
+ let llmModel = '';
93
+ if (answers.llmProvider !== 'none' &&
94
+ answers.llmApiKey !== undefined &&
95
+ answers.llmApiKey !== '') {
96
+ const option = LLM_PROVIDERS.find((entry) => entry.id === answers.llmProvider);
97
+ llmModel = answers.llmModel ?? option?.defaultModel ?? '';
98
+ keyValidation = await validateApiKey({
99
+ provider: answers.llmProvider,
100
+ apiKey: answers.llmApiKey,
101
+ model: llmModel,
102
+ });
103
+ }
104
+ // "Aperçu proposé sur trois pages types, avec possibilité de régénérer ou
105
+ // d'ajuster" (L9 task 7) needs the prompter, so it stays open until here —
106
+ // only a blueprint with a real content pack writes a `theme.tokens.json` a
107
+ // generated skin could replace.
108
+ let skinOutcome;
109
+ if (BLUEPRINT_CONTENT_PACKS[resolvedBlueprint.blueprint.id] !== undefined &&
110
+ answers.llmProvider !== 'none' &&
111
+ answers.llmApiKey !== undefined &&
112
+ answers.llmApiKey !== '' &&
113
+ keyValidation?.valid === true &&
114
+ answers.siteDescription !== undefined &&
115
+ answers.siteDescription !== '') {
116
+ out.heading('Skin generation');
117
+ skinOutcome = await chooseSkin({
118
+ prompter,
119
+ out,
120
+ client: createProviderClient({
121
+ provider: answers.llmProvider,
122
+ apiKey: answers.llmApiKey,
123
+ model: llmModel,
124
+ }),
125
+ model: llmModel,
126
+ description: answers.siteDescription,
127
+ blueprintLabel: resolvedBlueprint.blueprint.label,
128
+ siteName: answers.siteName,
129
+ targetDir: answers.targetDir,
130
+ });
131
+ }
132
+ prompter.close();
133
+ const scaffold = await scaffoldSite({
134
+ targetDir: answers.targetDir,
135
+ siteName: answers.siteName,
136
+ siteUrl: answers.siteUrl,
137
+ defaultLocale: answers.defaultLocale,
138
+ databaseDriver: answers.databaseDriver,
139
+ ...(answers.databaseUrl === undefined ? {} : { databaseUrl: answers.databaseUrl }),
140
+ ...(answers.llmProvider === 'none'
141
+ ? {}
142
+ : { llm: { provider: answers.llmProvider, model: answers.llmModel ?? '' } }),
143
+ adminEmail: answers.adminEmail,
144
+ blueprintId: resolvedBlueprint.blueprint.id,
145
+ ...(skinOutcome?.kind === 'generated' ? { skinTokens: skinOutcome.tokens } : {}),
146
+ }, env);
147
+ printRecap({
148
+ answers,
149
+ environment,
150
+ resolvedBlueprint,
151
+ scaffold,
152
+ ...(keyValidation === undefined ? {} : { keyValidation }),
153
+ ...(skinOutcome === undefined ? {} : { skinOutcome }),
154
+ }, out);
155
+ return scaffold.migrateExitCode === 0 && scaffold.usersExitCode === 0 ? 0 : 1;
156
+ }
157
+ //# sourceMappingURL=wizard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../src/wizard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EACL,oBAAoB,EACpB,aAAa,EAEb,cAAc,GACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAsB,MAAM,YAAY,CAAA;AAW/D,KAAK,UAAU,cAAc,CAC3B,QAAkB,EAClB,SAAiB,EACjB,QAAgB,EAChB,iBAAsC;IAEtC,MAAM,QAAQ,GAAG,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAEpD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAChE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC7D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,gCAAgC,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IAE5F,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,MAAM,CACvC,WAAW,EACX,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EACpE,CAAC,CACF,CAAA;IAED,MAAM,eAAe,GAAyE;QAC5F,EAAE,KAAK,EAAE,8CAA8C,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC1E,GAAG,CAAC,iBAAiB,CAAC,QAAQ;YAC5B,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,UAAmB,EAAE,CAAC;YAChE,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,OAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7F,CAAA;IACD,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC,CAAA;IAE5E,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,MAAM,CACrC,cAAc,EACd,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EACvE,CAAC,CACF,CAAA;IAED,IAAI,QAA4B,CAAA;IAChC,IAAI,SAA6B,CAAA;IACjC,IAAI,eAAmC,CAAA;IACvC,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;QACpE,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC,CAAA;QACnE,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;QAC9C,eAAe,GAAG,MAAM,QAAQ,CAAC,IAAI,CACnC,iIAAiI,EACjI,EAAE,CACH,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IAE1E,OAAO;QACL,GAAG,QAAQ;QACX,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,GAAG;QACZ,aAAa,EAAE,MAAM;QACrB,WAAW;QACX,cAAc;QACd,WAAW,EAAE,SAAS;QACtB,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;QAClE,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;QACrE,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;QACvF,UAAU;KACX,CAAA;AACH,CAAC;AAOD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAyB;IACvD,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAA;IAEtC,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAA;IACjF,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IAC1B,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI;YAAE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;aAC3C,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;;YACpD,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7B,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,EAAE,CAAA;QACV,GAAG,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;QACrD,QAAQ,CAAC,KAAK,EAAE,CAAA;QAChB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,OAAsB,CAAA;IAC1B,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/D,QAAQ,CAAC,KAAK,EAAE,CAAA;YAChB,OAAO,CAAC,CAAA;QACV,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE;YAC5E,QAAQ,EAAE,WAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC5D,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC;SACvD,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAE/D,IAAI,aAAqE,CAAA;IACzE,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,IACE,OAAO,CAAC,WAAW,KAAK,MAAM;QAC9B,OAAO,CAAC,SAAS,KAAK,SAAS;QAC/B,OAAO,CAAC,SAAS,KAAK,EAAE,EACxB,CAAC;QACD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;QAC9E,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,EAAE,YAAY,IAAI,EAAE,CAAA;QACzD,aAAa,GAAG,MAAM,cAAc,CAAC;YACnC,QAAQ,EAAE,OAAO,CAAC,WAAW;YAC7B,MAAM,EAAE,OAAO,CAAC,SAAS;YACzB,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAA;IACJ,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,gCAAgC;IAChC,IAAI,WAAoC,CAAA;IACxC,IACE,uBAAuB,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,SAAS;QACrE,OAAO,CAAC,WAAW,KAAK,MAAM;QAC9B,OAAO,CAAC,SAAS,KAAK,SAAS;QAC/B,OAAO,CAAC,SAAS,KAAK,EAAE;QACxB,aAAa,EAAE,KAAK,KAAK,IAAI;QAC7B,OAAO,CAAC,eAAe,KAAK,SAAS;QACrC,OAAO,CAAC,eAAe,KAAK,EAAE,EAC9B,CAAC;QACD,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;QAC9B,WAAW,GAAG,MAAM,UAAU,CAAC;YAC7B,QAAQ;YACR,GAAG;YACH,MAAM,EAAE,oBAAoB,CAAC;gBAC3B,QAAQ,EAAE,OAAO,CAAC,WAAW;gBAC7B,MAAM,EAAE,OAAO,CAAC,SAAS;gBACzB,KAAK,EAAE,QAAQ;aAChB,CAAC;YACF,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,OAAO,CAAC,eAAe;YACpC,cAAc,EAAE,iBAAiB,CAAC,SAAS,CAAC,KAAK;YACjD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAA;IACJ,CAAC;IACD,QAAQ,CAAC,KAAK,EAAE,CAAA;IAEhB,MAAM,QAAQ,GAAG,MAAM,YAAY,CACjC;QACE,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;QAClF,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,MAAM;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,EAAE,CAAC;QAC9E,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAAE;QAC3C,GAAG,CAAC,WAAW,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjF,EACD,GAAG,CACJ,CAAA;IAED,UAAU,CACR;QACE,OAAO;QACP,WAAW;QACX,iBAAiB;QACjB,QAAQ;QACR,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC;QACzD,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;KACtD,EACD,GAAG,CACJ,CAAA;IAED,OAAO,QAAQ,CAAC,eAAe,KAAK,CAAC,IAAI,QAAQ,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/E,CAAC"}
package/package.json CHANGED
@@ -1,12 +1,51 @@
1
1
  {
2
2
  "name": "create-cogenta",
3
- "version": "0.0.3",
4
- "description": "Créateur de projet pour Cogenta, le CMS agentique",
3
+ "version": "0.1.1",
4
+ "description": "The Cogenta installer wizard npm create cogenta.",
5
5
  "license": "MPL-2.0",
6
+ "type": "module",
7
+ "sideEffects": false,
8
+ "bin": {
9
+ "create-cogenta": "./dist/bin.js"
10
+ },
11
+ "exports": {
12
+ ".": {
13
+ "types": "./dist/index.d.ts",
14
+ "default": "./dist/index.js"
15
+ }
16
+ },
17
+ "files": [
18
+ "dist"
19
+ ],
20
+ "engines": {
21
+ "node": ">=22.11.0"
22
+ },
23
+ "publishConfig": {
24
+ "access": "public",
25
+ "provenance": true
26
+ },
6
27
  "repository": {
7
28
  "type": "git",
8
- "url": "git+https://github.com/cogenta-cms/cogenta.git"
29
+ "url": "git+https://github.com/cogenta-cms/cogenta.git",
30
+ "directory": "packages/create-cogenta"
31
+ },
32
+ "dependencies": {
33
+ "@cogenta/agents": "0.1.1",
34
+ "@cogenta/cli": "0.1.1",
35
+ "@cogenta/auth": "0.1.1",
36
+ "@cogenta/blocks": "0.1.1",
37
+ "@cogenta/render": "0.1.1",
38
+ "@cogenta/core": "0.1.1",
39
+ "@cogenta/schema": "0.1.1",
40
+ "@cogenta/theme-canonical": "0.1.1"
41
+ },
42
+ "devDependencies": {
43
+ "typescript": "^7.0.2",
44
+ "vitest": "^4.1.10"
9
45
  },
10
- "homepage": "https://github.com/cogenta-cms/cogenta",
11
- "keywords": ["cms", "agentic", "ai", "headless", "astro", "nodejs"]
46
+ "scripts": {
47
+ "build": "tsc -p tsconfig.json",
48
+ "typecheck": "tsc -p tsconfig.typecheck.json",
49
+ "test": "vitest run --passWithNoTests"
50
+ }
12
51
  }
package/README.md DELETED
@@ -1,39 +0,0 @@
1
- # create-cogenta
2
-
3
- Project scaffolder for **Cogenta**, an agentic CMS built on Node.js.
4
-
5
- > 🚧 **Work in progress.** This package currently reserves the name.
6
- > The installer ships with the first usable release.
7
-
8
- ## What is Cogenta?
9
-
10
- Cogenta is a content management system whose multi-agent runtime is part of the
11
- core, not a plugin. Agents watch the site's own dependencies and correlate
12
- published CVEs, audit SEO on every publish, track Core Web Vitals, and draft
13
- content — each with declared tool permissions, a memory, a budget, and an
14
- explicit autonomy level, under human review and with an append-only audit log.
15
-
16
- The CMS remains fully functional without any AI provider configured. Agents
17
- accelerate; they are never a single point of failure.
18
-
19
- ## Planned highlights
20
-
21
- - **Type-safe end to end** — content schema lives in TypeScript, versioned in git.
22
- A theme referencing a removed field fails at build time, not in production.
23
- - **Semantic blocks** — content stores meaning, never HTML or CSS classes, so
24
- switching themes never breaks a page.
25
- - **Three delivery targets** — static, Node SSR, or edge, from the same content
26
- and the same theme.
27
- - **No hard infrastructure dependencies** — Redis, Docker, S3 and persistent
28
- workers are all optional, each with a degraded driver.
29
- - **Isolated third-party plugins** — no filesystem, network or secret access
30
- beyond the capabilities their manifest declares and the user approves.
31
-
32
- ## Status
33
-
34
- Pre-alpha. Follow development at
35
- [github.com/cogenta-cms/cogenta](https://github.com/cogenta-cms/cogenta).
36
-
37
- ## License
38
-
39
- [MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/)