popeye-cli 1.2.1 → 1.3.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.
- package/.env.example +4 -1
- package/CONTRIBUTING.md +10 -0
- package/README.md +111 -2
- package/dist/adapters/claude.d.ts +3 -2
- package/dist/adapters/claude.d.ts.map +1 -1
- package/dist/adapters/claude.js +214 -0
- package/dist/adapters/claude.js.map +1 -1
- package/dist/adapters/grok.d.ts +2 -1
- package/dist/adapters/grok.d.ts.map +1 -1
- package/dist/adapters/grok.js.map +1 -1
- package/dist/adapters/index.d.ts +8 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +12 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/openai.d.ts +2 -2
- package/dist/adapters/openai.d.ts.map +1 -1
- package/dist/adapters/openai.js.map +1 -1
- package/dist/cli/commands/create.d.ts.map +1 -1
- package/dist/cli/commands/create.js +25 -5
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/interactive.d.ts.map +1 -1
- package/dist/cli/interactive.js +47 -6
- package/dist/cli/interactive.js.map +1 -1
- package/dist/generators/all.d.ts +40 -0
- package/dist/generators/all.d.ts.map +1 -0
- package/dist/generators/all.js +826 -0
- package/dist/generators/all.js.map +1 -0
- package/dist/generators/fullstack.d.ts +9 -0
- package/dist/generators/fullstack.d.ts.map +1 -1
- package/dist/generators/fullstack.js.map +1 -1
- package/dist/generators/index.d.ts +3 -1
- package/dist/generators/index.d.ts.map +1 -1
- package/dist/generators/index.js +33 -0
- package/dist/generators/index.js.map +1 -1
- package/dist/generators/templates/index.d.ts +2 -0
- package/dist/generators/templates/index.d.ts.map +1 -1
- package/dist/generators/templates/index.js +2 -0
- package/dist/generators/templates/index.js.map +1 -1
- package/dist/generators/templates/website.d.ts +85 -0
- package/dist/generators/templates/website.d.ts.map +1 -0
- package/dist/generators/templates/website.js +877 -0
- package/dist/generators/templates/website.js.map +1 -0
- package/dist/generators/website.d.ts +56 -0
- package/dist/generators/website.d.ts.map +1 -0
- package/dist/generators/website.js +269 -0
- package/dist/generators/website.js.map +1 -0
- package/dist/types/consensus.d.ts +8 -3
- package/dist/types/consensus.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/project.d.ts +115 -1
- package/dist/types/project.d.ts.map +1 -1
- package/dist/types/project.js +41 -1
- package/dist/types/project.js.map +1 -1
- package/dist/workflow/consensus.d.ts +2 -1
- package/dist/workflow/consensus.d.ts.map +1 -1
- package/dist/workflow/consensus.js.map +1 -1
- package/dist/workflow/index.d.ts +6 -0
- package/dist/workflow/index.d.ts.map +1 -1
- package/dist/workflow/index.js +8 -0
- package/dist/workflow/index.js.map +1 -1
- package/dist/workflow/plan-mode.d.ts +3 -3
- package/dist/workflow/plan-mode.d.ts.map +1 -1
- package/dist/workflow/plan-mode.js.map +1 -1
- package/dist/workflow/plan-parser.d.ts +97 -0
- package/dist/workflow/plan-parser.d.ts.map +1 -0
- package/dist/workflow/plan-parser.js +235 -0
- package/dist/workflow/plan-parser.js.map +1 -0
- package/dist/workflow/plan-storage.d.ts +40 -12
- package/dist/workflow/plan-storage.d.ts.map +1 -1
- package/dist/workflow/plan-storage.js +47 -20
- package/dist/workflow/plan-storage.js.map +1 -1
- package/dist/workflow/seo-tests.d.ts +43 -0
- package/dist/workflow/seo-tests.d.ts.map +1 -0
- package/dist/workflow/seo-tests.js +192 -0
- package/dist/workflow/seo-tests.js.map +1 -0
- package/dist/workflow/separation-guard.d.ts +35 -0
- package/dist/workflow/separation-guard.d.ts.map +1 -0
- package/dist/workflow/separation-guard.js +154 -0
- package/dist/workflow/separation-guard.js.map +1 -0
- package/dist/workflow/test-runner.d.ts.map +1 -1
- package/dist/workflow/test-runner.js +128 -0
- package/dist/workflow/test-runner.js.map +1 -1
- package/dist/workflow/workspace-manager.d.ts +31 -20
- package/dist/workflow/workspace-manager.d.ts.map +1 -1
- package/dist/workflow/workspace-manager.js +38 -9
- package/dist/workflow/workspace-manager.js.map +1 -1
- package/package.json +1 -1
- package/src/adapters/claude.ts +221 -4
- package/src/adapters/grok.ts +2 -1
- package/src/adapters/index.ts +15 -0
- package/src/adapters/openai.ts +2 -2
- package/src/cli/commands/create.ts +25 -5
- package/src/cli/interactive.ts +47 -6
- package/src/generators/all.ts +897 -0
- package/src/generators/fullstack.ts +10 -0
- package/src/generators/index.ts +54 -0
- package/src/generators/templates/index.ts +2 -0
- package/src/generators/templates/website.ts +906 -0
- package/src/generators/website.ts +350 -0
- package/src/types/consensus.ts +9 -3
- package/src/types/index.ts +33 -0
- package/src/types/project.ts +139 -2
- package/src/workflow/consensus.ts +3 -2
- package/src/workflow/index.ts +8 -0
- package/src/workflow/plan-mode.ts +3 -3
- package/src/workflow/plan-parser.ts +317 -0
- package/src/workflow/plan-storage.ts +69 -30
- package/src/workflow/seo-tests.ts +246 -0
- package/src/workflow/separation-guard.ts +200 -0
- package/src/workflow/test-runner.ts +149 -0
- package/src/workflow/workspace-manager.ts +68 -31
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../../src/generators/templates/website.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Website project generator
|
|
3
|
+
* Creates SEO-ready Next.js marketing website
|
|
4
|
+
*/
|
|
5
|
+
import type { ProjectSpec } from '../types/project.js';
|
|
6
|
+
/**
|
|
7
|
+
* Project generation result
|
|
8
|
+
*/
|
|
9
|
+
export interface GenerationResult {
|
|
10
|
+
success: boolean;
|
|
11
|
+
projectDir: string;
|
|
12
|
+
filesCreated: string[];
|
|
13
|
+
error?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Website generator options for workspace/monorepo support
|
|
17
|
+
*/
|
|
18
|
+
export interface WebsiteGeneratorOptions {
|
|
19
|
+
/** Base directory for project (defaults to outputDir/projectName) */
|
|
20
|
+
baseDir?: string;
|
|
21
|
+
/** Override auto-derived package name */
|
|
22
|
+
packageName?: string;
|
|
23
|
+
/** Adjust paths for monorepo structure */
|
|
24
|
+
workspaceMode?: boolean;
|
|
25
|
+
/** Skip Docker files (fullstack uses root docker-compose) */
|
|
26
|
+
skipDocker?: boolean;
|
|
27
|
+
/** Skip README (fullstack has root README) */
|
|
28
|
+
skipReadme?: boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Generate a complete Next.js website project
|
|
32
|
+
*
|
|
33
|
+
* @param spec - Project specification
|
|
34
|
+
* @param outputDir - Output directory
|
|
35
|
+
* @param options - Generator options for workspace/monorepo support
|
|
36
|
+
* @returns Generation result
|
|
37
|
+
*/
|
|
38
|
+
export declare function generateWebsiteProject(spec: ProjectSpec, outputDir: string, options?: WebsiteGeneratorOptions): Promise<GenerationResult>;
|
|
39
|
+
/**
|
|
40
|
+
* Get the list of files that would be generated for a website project
|
|
41
|
+
*
|
|
42
|
+
* @param _projectName - Project name
|
|
43
|
+
* @returns List of relative file paths
|
|
44
|
+
*/
|
|
45
|
+
export declare function getWebsiteProjectFiles(_projectName: string): string[];
|
|
46
|
+
/**
|
|
47
|
+
* Validate a website project structure
|
|
48
|
+
*
|
|
49
|
+
* @param projectDir - Project directory
|
|
50
|
+
* @returns Validation result
|
|
51
|
+
*/
|
|
52
|
+
export declare function validateWebsiteProject(projectDir: string): Promise<{
|
|
53
|
+
valid: boolean;
|
|
54
|
+
missingFiles: string[];
|
|
55
|
+
}>;
|
|
56
|
+
//# sourceMappingURL=website.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../src/generators/website.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAwBvD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAgBD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,gBAAgB,CAAC,CA6L3B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAgCrE;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IACxE,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC,CA0BD"}
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Website project generator
|
|
3
|
+
* Creates SEO-ready Next.js marketing website
|
|
4
|
+
*/
|
|
5
|
+
import { promises as fs } from 'node:fs';
|
|
6
|
+
import path from 'node:path';
|
|
7
|
+
import { generateWebsitePackageJson, generateNextConfig, generateWebsiteTsconfig, generateWebsiteTailwindConfig, generateWebsitePostcssConfig, generateWebsiteLayout, generateWebsiteGlobalsCss, generateWebsiteLandingPage, generateWebsitePricingPage, generateWebsiteSitemap, generateWebsiteRobots, generateWebsiteDockerfile, generateWebsiteReadme, generateWebsiteSpec, generateWebsiteVitestConfig, generateWebsiteVitestSetup, generateWebsiteTest, generateWebsiteDocsPage, generateWebsiteBlogPage, generateWebsiteNextEnv, } from './templates/website.js';
|
|
8
|
+
/**
|
|
9
|
+
* Create a directory if it doesn't exist
|
|
10
|
+
*/
|
|
11
|
+
async function ensureDir(dirPath) {
|
|
12
|
+
await fs.mkdir(dirPath, { recursive: true });
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Write a file with content
|
|
16
|
+
*/
|
|
17
|
+
async function writeFile(filePath, content) {
|
|
18
|
+
await fs.writeFile(filePath, content, 'utf-8');
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Generate a complete Next.js website project
|
|
22
|
+
*
|
|
23
|
+
* @param spec - Project specification
|
|
24
|
+
* @param outputDir - Output directory
|
|
25
|
+
* @param options - Generator options for workspace/monorepo support
|
|
26
|
+
* @returns Generation result
|
|
27
|
+
*/
|
|
28
|
+
export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
29
|
+
const { baseDir,
|
|
30
|
+
// packageName reserved for future use
|
|
31
|
+
workspaceMode = false, skipDocker = false, skipReadme = false, } = options;
|
|
32
|
+
const projectName = spec.name || 'my-project';
|
|
33
|
+
// In workspace mode with baseDir, use it directly; otherwise create subdirectory
|
|
34
|
+
const projectDir = baseDir || path.join(outputDir, projectName);
|
|
35
|
+
const filesCreated = [];
|
|
36
|
+
try {
|
|
37
|
+
// Create project directory structure
|
|
38
|
+
await ensureDir(projectDir);
|
|
39
|
+
await ensureDir(path.join(projectDir, 'src', 'app'));
|
|
40
|
+
await ensureDir(path.join(projectDir, 'src', 'app', 'pricing'));
|
|
41
|
+
await ensureDir(path.join(projectDir, 'src', 'app', 'docs'));
|
|
42
|
+
await ensureDir(path.join(projectDir, 'src', 'app', 'blog'));
|
|
43
|
+
await ensureDir(path.join(projectDir, 'src', 'components'));
|
|
44
|
+
await ensureDir(path.join(projectDir, 'src', 'lib'));
|
|
45
|
+
await ensureDir(path.join(projectDir, 'content', 'blog'));
|
|
46
|
+
await ensureDir(path.join(projectDir, 'content', 'docs'));
|
|
47
|
+
await ensureDir(path.join(projectDir, 'public'));
|
|
48
|
+
await ensureDir(path.join(projectDir, 'tests'));
|
|
49
|
+
// Only create .popeye dir in standalone mode
|
|
50
|
+
if (!workspaceMode) {
|
|
51
|
+
await ensureDir(path.join(projectDir, '.popeye'));
|
|
52
|
+
}
|
|
53
|
+
// Generate and write files
|
|
54
|
+
const files = [
|
|
55
|
+
// Config files
|
|
56
|
+
{
|
|
57
|
+
path: path.join(projectDir, 'package.json'),
|
|
58
|
+
content: generateWebsitePackageJson(projectName),
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
path: path.join(projectDir, 'next.config.mjs'),
|
|
62
|
+
content: generateNextConfig(),
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
path: path.join(projectDir, 'tsconfig.json'),
|
|
66
|
+
content: generateWebsiteTsconfig(),
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
path: path.join(projectDir, 'tailwind.config.ts'),
|
|
70
|
+
content: generateWebsiteTailwindConfig(),
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
path: path.join(projectDir, 'postcss.config.js'),
|
|
74
|
+
content: generateWebsitePostcssConfig(),
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
path: path.join(projectDir, 'vitest.config.ts'),
|
|
78
|
+
content: generateWebsiteVitestConfig(),
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
path: path.join(projectDir, 'next-env.d.ts'),
|
|
82
|
+
content: generateWebsiteNextEnv(),
|
|
83
|
+
},
|
|
84
|
+
// App Router files
|
|
85
|
+
{
|
|
86
|
+
path: path.join(projectDir, 'src', 'app', 'layout.tsx'),
|
|
87
|
+
content: generateWebsiteLayout(projectName),
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
path: path.join(projectDir, 'src', 'app', 'globals.css'),
|
|
91
|
+
content: generateWebsiteGlobalsCss(),
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
path: path.join(projectDir, 'src', 'app', 'page.tsx'),
|
|
95
|
+
content: generateWebsiteLandingPage(projectName),
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
path: path.join(projectDir, 'src', 'app', 'pricing', 'page.tsx'),
|
|
99
|
+
content: generateWebsitePricingPage(projectName),
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
path: path.join(projectDir, 'src', 'app', 'docs', 'page.tsx'),
|
|
103
|
+
content: generateWebsiteDocsPage(),
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
path: path.join(projectDir, 'src', 'app', 'blog', 'page.tsx'),
|
|
107
|
+
content: generateWebsiteBlogPage(),
|
|
108
|
+
},
|
|
109
|
+
// SEO files
|
|
110
|
+
{
|
|
111
|
+
path: path.join(projectDir, 'src', 'app', 'sitemap.ts'),
|
|
112
|
+
content: generateWebsiteSitemap(projectName),
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
path: path.join(projectDir, 'src', 'app', 'robots.ts'),
|
|
116
|
+
content: generateWebsiteRobots(projectName),
|
|
117
|
+
},
|
|
118
|
+
// Test files
|
|
119
|
+
{
|
|
120
|
+
path: path.join(projectDir, 'tests', 'setup.ts'),
|
|
121
|
+
content: generateWebsiteVitestSetup(),
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
path: path.join(projectDir, 'tests', 'page.test.tsx'),
|
|
125
|
+
content: generateWebsiteTest(projectName),
|
|
126
|
+
},
|
|
127
|
+
// Placeholder files
|
|
128
|
+
{
|
|
129
|
+
path: path.join(projectDir, 'public', '.gitkeep'),
|
|
130
|
+
content: '',
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
path: path.join(projectDir, 'content', 'blog', '.gitkeep'),
|
|
134
|
+
content: '',
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
path: path.join(projectDir, 'content', 'docs', '.gitkeep'),
|
|
138
|
+
content: '',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
path: path.join(projectDir, 'src', 'components', '.gitkeep'),
|
|
142
|
+
content: '',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
path: path.join(projectDir, 'src', 'lib', '.gitkeep'),
|
|
146
|
+
content: '',
|
|
147
|
+
},
|
|
148
|
+
// Environment
|
|
149
|
+
{
|
|
150
|
+
path: path.join(projectDir, '.env.example'),
|
|
151
|
+
content: 'NEXT_PUBLIC_SITE_URL=http://localhost:3001\nNEXT_PUBLIC_APP_URL=http://localhost:3000\n',
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
path: path.join(projectDir, '.gitignore'),
|
|
155
|
+
content: 'node_modules/\n.next/\nout/\n.env\n.env.local\n.env.*.local\ncoverage/\n*.log\n.DS_Store\n',
|
|
156
|
+
},
|
|
157
|
+
];
|
|
158
|
+
// Add website spec in standalone mode
|
|
159
|
+
if (!workspaceMode) {
|
|
160
|
+
files.push({
|
|
161
|
+
path: path.join(projectDir, '.popeye', 'website-spec.json'),
|
|
162
|
+
content: generateWebsiteSpec(projectName),
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
// Add README if not skipped
|
|
166
|
+
if (!skipReadme) {
|
|
167
|
+
files.push({
|
|
168
|
+
path: path.join(projectDir, 'README.md'),
|
|
169
|
+
content: generateWebsiteReadme(projectName),
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
// Add Docker files if not skipped
|
|
173
|
+
if (!skipDocker) {
|
|
174
|
+
files.push({
|
|
175
|
+
path: path.join(projectDir, 'Dockerfile'),
|
|
176
|
+
content: generateWebsiteDockerfile(),
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
// Write all files
|
|
180
|
+
for (const file of files) {
|
|
181
|
+
await writeFile(file.path, file.content);
|
|
182
|
+
filesCreated.push(file.path);
|
|
183
|
+
}
|
|
184
|
+
return {
|
|
185
|
+
success: true,
|
|
186
|
+
projectDir,
|
|
187
|
+
filesCreated,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
catch (error) {
|
|
191
|
+
return {
|
|
192
|
+
success: false,
|
|
193
|
+
projectDir,
|
|
194
|
+
filesCreated,
|
|
195
|
+
error: error instanceof Error ? error.message : 'Unknown error',
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Get the list of files that would be generated for a website project
|
|
201
|
+
*
|
|
202
|
+
* @param _projectName - Project name
|
|
203
|
+
* @returns List of relative file paths
|
|
204
|
+
*/
|
|
205
|
+
export function getWebsiteProjectFiles(_projectName) {
|
|
206
|
+
return [
|
|
207
|
+
// Config
|
|
208
|
+
'package.json',
|
|
209
|
+
'next.config.mjs',
|
|
210
|
+
'tsconfig.json',
|
|
211
|
+
'tailwind.config.ts',
|
|
212
|
+
'postcss.config.js',
|
|
213
|
+
'vitest.config.ts',
|
|
214
|
+
'next-env.d.ts',
|
|
215
|
+
'.gitignore',
|
|
216
|
+
'.env.example',
|
|
217
|
+
'README.md',
|
|
218
|
+
'Dockerfile',
|
|
219
|
+
// App Router
|
|
220
|
+
'src/app/layout.tsx',
|
|
221
|
+
'src/app/globals.css',
|
|
222
|
+
'src/app/page.tsx',
|
|
223
|
+
'src/app/pricing/page.tsx',
|
|
224
|
+
'src/app/docs/page.tsx',
|
|
225
|
+
'src/app/blog/page.tsx',
|
|
226
|
+
'src/app/sitemap.ts',
|
|
227
|
+
'src/app/robots.ts',
|
|
228
|
+
// Tests
|
|
229
|
+
'tests/setup.ts',
|
|
230
|
+
'tests/page.test.tsx',
|
|
231
|
+
// Content
|
|
232
|
+
'content/blog/.gitkeep',
|
|
233
|
+
'content/docs/.gitkeep',
|
|
234
|
+
// Spec
|
|
235
|
+
'.popeye/website-spec.json',
|
|
236
|
+
];
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Validate a website project structure
|
|
240
|
+
*
|
|
241
|
+
* @param projectDir - Project directory
|
|
242
|
+
* @returns Validation result
|
|
243
|
+
*/
|
|
244
|
+
export async function validateWebsiteProject(projectDir) {
|
|
245
|
+
const missingFiles = [];
|
|
246
|
+
const requiredFiles = [
|
|
247
|
+
'package.json',
|
|
248
|
+
'next.config.mjs',
|
|
249
|
+
'tsconfig.json',
|
|
250
|
+
'src/app/layout.tsx',
|
|
251
|
+
'src/app/page.tsx',
|
|
252
|
+
'src/app/sitemap.ts',
|
|
253
|
+
'src/app/robots.ts',
|
|
254
|
+
];
|
|
255
|
+
for (const file of requiredFiles) {
|
|
256
|
+
const filePath = path.join(projectDir, file);
|
|
257
|
+
try {
|
|
258
|
+
await fs.access(filePath);
|
|
259
|
+
}
|
|
260
|
+
catch {
|
|
261
|
+
missingFiles.push(file);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return {
|
|
265
|
+
valid: missingFiles.length === 0,
|
|
266
|
+
missingFiles,
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
//# sourceMappingURL=website.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../src/generators/website.ts"],"names":[],"mappings":"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"}
|
|
@@ -193,9 +193,9 @@ export interface EscalationDetails {
|
|
|
193
193
|
suggestedActions: string[];
|
|
194
194
|
}
|
|
195
195
|
/**
|
|
196
|
-
* App target for fullstack reviews
|
|
196
|
+
* App target for fullstack/all reviews
|
|
197
197
|
*/
|
|
198
|
-
export type ReviewAppTarget = 'frontend' | 'backend' | 'unified';
|
|
198
|
+
export type ReviewAppTarget = 'frontend' | 'backend' | 'website' | 'unified';
|
|
199
199
|
/**
|
|
200
200
|
* Tagged concern/recommendation with app context
|
|
201
201
|
*/
|
|
@@ -204,11 +204,12 @@ export interface TaggedItem {
|
|
|
204
204
|
content: string;
|
|
205
205
|
}
|
|
206
206
|
/**
|
|
207
|
-
* Per-app consensus scores for fullstack projects
|
|
207
|
+
* Per-app consensus scores for fullstack/all projects
|
|
208
208
|
*/
|
|
209
209
|
export interface AppConsensusScores {
|
|
210
210
|
frontend?: number;
|
|
211
211
|
backend?: number;
|
|
212
|
+
website?: number;
|
|
212
213
|
unified: number;
|
|
213
214
|
}
|
|
214
215
|
/**
|
|
@@ -246,6 +247,7 @@ export interface FullstackConsensusIteration extends ConsensusIteration {
|
|
|
246
247
|
appApproved?: {
|
|
247
248
|
frontend?: boolean;
|
|
248
249
|
backend?: boolean;
|
|
250
|
+
website?: boolean;
|
|
249
251
|
unified: boolean;
|
|
250
252
|
};
|
|
251
253
|
}
|
|
@@ -282,6 +284,9 @@ export interface ConsensusTrackingRecord {
|
|
|
282
284
|
backendScore?: number;
|
|
283
285
|
backendApproved?: boolean;
|
|
284
286
|
backendIterations?: number;
|
|
287
|
+
websiteScore?: number;
|
|
288
|
+
websiteApproved?: boolean;
|
|
289
|
+
websiteIterations?: number;
|
|
285
290
|
/** All corrections/revisions made */
|
|
286
291
|
corrections: CorrectionRecord[];
|
|
287
292
|
/** Timestamps */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consensus.d.ts","sourceRoot":"","sources":["../../src/types/consensus.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"consensus.d.ts","sourceRoot":"","sources":["../../src/types/consensus.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Central type exports for Popeye CLI
|
|
3
3
|
* Re-exports all types from subdirectories for easy importing
|
|
4
4
|
*/
|
|
5
|
-
export { OutputLanguageSchema, OpenAIModelSchema, ProjectSpecSchema, OPENAI_MODELS, type OutputLanguage, type OpenAIModel, type ProjectSpec, type GeneratedProject, type GenerationOptions, } from './project.js';
|
|
5
|
+
export { OutputLanguageSchema, OpenAIModelSchema, ProjectSpecSchema, OPENAI_MODELS, languageToApps, hasApp, type OutputLanguage, type OpenAIModel, type ProjectSpec, type GeneratedProject, type GenerationOptions, type AppType, type WorkspaceApp, type WorkspaceAppCommands, type WorkspaceAppDocker, type WorkspaceShared, type WorkspaceCommands, type WorkspaceDocker, type WorkspaceConfig, type WebsiteSpec, type WebsiteBrandColors, type WebsiteTypography, type WebsiteSeo, type WebsitePage, type WebsiteCta, type WebsiteFeatures, } from './project.js';
|
|
6
6
|
export { WorkflowPhaseSchema, TaskStatusSchema, ProjectStateSchema, ProjectStatusSchema, TaskSchema, MilestoneSchema, type WorkflowPhase, type ProjectStatus, type TaskStatus, type Task, type Milestone, type ProjectState, type WorkflowEvent, } from './workflow.js';
|
|
7
|
-
export { ConsensusConfigSchema, DEFAULT_CONSENSUS_CONFIG, type ConsensusResult, type ConsensusIteration, type ConsensusConfig, type PlanDocument, type ConsensusRequest, type EscalationDetails, } from './consensus.js';
|
|
7
|
+
export { ConsensusConfigSchema, DEFAULT_CONSENSUS_CONFIG, DEFAULT_GROK_MODEL, AIProviderSchema, GeminiModelSchema, GrokModelSchema, type AIProvider, type GeminiModel, type GrokModel, type ConsensusResult, type ConsensusIteration, type ConsensusConfig, type PlanDocument, type ConsensusRequest, type EscalationDetails, type ArbitrationResult, type ReviewAppTarget, type TaggedItem, type AppConsensusScores, type AppFeedback, type FullstackConsensusResult, type FullstackConsensusIteration, type CorrectionRecord, type ConsensusTrackingRecord, } from './consensus.js';
|
|
8
8
|
export { EXIT_CODES, type GlobalOptions, type CreateOptions, type ResumeOptions, type StatusOptions, type AuthOptions, type ConfigOptions, type AuthStatus, type InteractiveSession, type SlashCommand, type ProgressInfo, type OutputStyles, type BannerConfig, type ExitCode, } from './cli.js';
|
|
9
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,MAAM,EACN,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,IAAI,EACT,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,aAAa,GACnB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,GAC7B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,UAAU,EACV,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,QAAQ,GACd,MAAM,UAAU,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
* Re-exports all types from subdirectories for easy importing
|
|
4
4
|
*/
|
|
5
5
|
// Project types
|
|
6
|
-
export { OutputLanguageSchema, OpenAIModelSchema, ProjectSpecSchema, OPENAI_MODELS, } from './project.js';
|
|
6
|
+
export { OutputLanguageSchema, OpenAIModelSchema, ProjectSpecSchema, OPENAI_MODELS, languageToApps, hasApp, } from './project.js';
|
|
7
7
|
// Workflow types
|
|
8
8
|
export { WorkflowPhaseSchema, TaskStatusSchema, ProjectStateSchema, ProjectStatusSchema, TaskSchema, MilestoneSchema, } from './workflow.js';
|
|
9
9
|
// Consensus types
|
|
10
|
-
export { ConsensusConfigSchema, DEFAULT_CONSENSUS_CONFIG, } from './consensus.js';
|
|
10
|
+
export { ConsensusConfigSchema, DEFAULT_CONSENSUS_CONFIG, DEFAULT_GROK_MODEL, AIProviderSchema, GeminiModelSchema, GrokModelSchema, } from './consensus.js';
|
|
11
11
|
// CLI types
|
|
12
12
|
export { EXIT_CODES, } from './cli.js';
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,gBAAgB;AAChB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,gBAAgB;AAChB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,MAAM,GAqBP,MAAM,cAAc,CAAC;AAEtB,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,eAAe,GAQhB,MAAM,eAAe,CAAC;AAEvB,kBAAkB;AAClB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAmBhB,MAAM,gBAAgB,CAAC;AAExB,YAAY;AACZ,OAAO,EACL,UAAU,GAcX,MAAM,UAAU,CAAC"}
|
package/dist/types/project.d.ts
CHANGED
|
@@ -6,12 +6,41 @@ import { z } from 'zod';
|
|
|
6
6
|
/**
|
|
7
7
|
* Supported output languages for generated projects
|
|
8
8
|
*/
|
|
9
|
+
/**
|
|
10
|
+
* Supported output languages for generated projects
|
|
11
|
+
* - python: Backend only (FastAPI)
|
|
12
|
+
* - typescript: Frontend only (React/Vite)
|
|
13
|
+
* - fullstack: FE + BE
|
|
14
|
+
* - website: Website only (Next.js SSG/SSR)
|
|
15
|
+
* - all: FE + BE + Website (everything)
|
|
16
|
+
*/
|
|
9
17
|
export declare const OutputLanguageSchema: z.ZodEnum<{
|
|
10
18
|
python: "python";
|
|
11
19
|
typescript: "typescript";
|
|
12
20
|
fullstack: "fullstack";
|
|
21
|
+
website: "website";
|
|
22
|
+
all: "all";
|
|
13
23
|
}>;
|
|
14
24
|
export type OutputLanguage = z.infer<typeof OutputLanguageSchema>;
|
|
25
|
+
/**
|
|
26
|
+
* App types that can be generated
|
|
27
|
+
*/
|
|
28
|
+
export type AppType = 'frontend' | 'backend' | 'website';
|
|
29
|
+
/**
|
|
30
|
+
* Maps a language to the apps it will generate
|
|
31
|
+
*
|
|
32
|
+
* @param language - The output language
|
|
33
|
+
* @returns Array of app types to generate
|
|
34
|
+
*/
|
|
35
|
+
export declare function languageToApps(language: OutputLanguage): AppType[];
|
|
36
|
+
/**
|
|
37
|
+
* Checks if a language generates a specific app type
|
|
38
|
+
*
|
|
39
|
+
* @param language - The output language
|
|
40
|
+
* @param app - The app type to check
|
|
41
|
+
* @returns True if the language generates the app
|
|
42
|
+
*/
|
|
43
|
+
export declare function hasApp(language: OutputLanguage, app: AppType): boolean;
|
|
15
44
|
/**
|
|
16
45
|
* Commands configuration for a workspace app
|
|
17
46
|
*/
|
|
@@ -54,6 +83,10 @@ export interface WorkspaceShared {
|
|
|
54
83
|
contracts?: string;
|
|
55
84
|
/** Generator command for FE client from OpenAPI */
|
|
56
85
|
contractsGenerator?: string;
|
|
86
|
+
/** Shared UI components package path */
|
|
87
|
+
ui?: string;
|
|
88
|
+
/** Design tokens package path */
|
|
89
|
+
designTokens?: string;
|
|
57
90
|
}
|
|
58
91
|
/**
|
|
59
92
|
* Repo-level commands for workspace orchestration
|
|
@@ -73,19 +106,98 @@ export interface WorkspaceDocker {
|
|
|
73
106
|
rootComposeSymlink?: boolean;
|
|
74
107
|
}
|
|
75
108
|
/**
|
|
76
|
-
* Workspace configuration for fullstack projects
|
|
109
|
+
* Workspace configuration for fullstack/website/all projects
|
|
77
110
|
*/
|
|
78
111
|
export interface WorkspaceConfig {
|
|
79
112
|
version: '1.0';
|
|
80
113
|
apps: {
|
|
81
114
|
frontend?: WorkspaceApp;
|
|
82
115
|
backend?: WorkspaceApp;
|
|
116
|
+
website?: WorkspaceApp;
|
|
83
117
|
};
|
|
84
118
|
shared?: WorkspaceShared;
|
|
85
119
|
/** Repo-level commands that orchestrate across apps */
|
|
86
120
|
commands: WorkspaceCommands;
|
|
87
121
|
docker: WorkspaceDocker;
|
|
88
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* Brand colors for website design
|
|
125
|
+
*/
|
|
126
|
+
export interface WebsiteBrandColors {
|
|
127
|
+
primary: string;
|
|
128
|
+
secondary: string;
|
|
129
|
+
accent: string;
|
|
130
|
+
background: string;
|
|
131
|
+
foreground: string;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Typography configuration for website
|
|
135
|
+
*/
|
|
136
|
+
export interface WebsiteTypography {
|
|
137
|
+
headingFont: string;
|
|
138
|
+
bodyFont: string;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* SEO configuration for website
|
|
142
|
+
*/
|
|
143
|
+
export interface WebsiteSeo {
|
|
144
|
+
title: string;
|
|
145
|
+
description: string;
|
|
146
|
+
keywords: string[];
|
|
147
|
+
ogImage?: string;
|
|
148
|
+
twitterHandle?: string;
|
|
149
|
+
locale: string;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Page configuration for website
|
|
153
|
+
*/
|
|
154
|
+
export interface WebsitePage {
|
|
155
|
+
name: string;
|
|
156
|
+
path: string;
|
|
157
|
+
type: 'landing' | 'pricing' | 'docs' | 'blog' | 'changelog' | 'legal';
|
|
158
|
+
seo?: {
|
|
159
|
+
title?: string;
|
|
160
|
+
description?: string;
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Call-to-action configuration
|
|
165
|
+
*/
|
|
166
|
+
export interface WebsiteCta {
|
|
167
|
+
primary: {
|
|
168
|
+
text: string;
|
|
169
|
+
href: string;
|
|
170
|
+
};
|
|
171
|
+
secondary?: {
|
|
172
|
+
text: string;
|
|
173
|
+
href: string;
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Feature flags for website
|
|
178
|
+
*/
|
|
179
|
+
export interface WebsiteFeatures {
|
|
180
|
+
analytics?: boolean;
|
|
181
|
+
newsletter?: boolean;
|
|
182
|
+
mdxBlog?: boolean;
|
|
183
|
+
docsSearch?: boolean;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Website specification for Next.js marketing sites
|
|
187
|
+
*/
|
|
188
|
+
export interface WebsiteSpec {
|
|
189
|
+
version: '1.0';
|
|
190
|
+
brand: {
|
|
191
|
+
name: string;
|
|
192
|
+
tagline?: string;
|
|
193
|
+
colors: WebsiteBrandColors;
|
|
194
|
+
typography: WebsiteTypography;
|
|
195
|
+
};
|
|
196
|
+
seo: WebsiteSeo;
|
|
197
|
+
pages: WebsitePage[];
|
|
198
|
+
cta: WebsiteCta;
|
|
199
|
+
features?: WebsiteFeatures;
|
|
200
|
+
}
|
|
89
201
|
/**
|
|
90
202
|
* Supported OpenAI models for consensus reviews
|
|
91
203
|
*/
|
|
@@ -107,6 +219,8 @@ export declare const ProjectSpecSchema: z.ZodObject<{
|
|
|
107
219
|
python: "python";
|
|
108
220
|
typescript: "typescript";
|
|
109
221
|
fullstack: "fullstack";
|
|
222
|
+
website: "website";
|
|
223
|
+
all: "all";
|
|
110
224
|
}>;
|
|
111
225
|
openaiModel: z.ZodEnum<{
|
|
112
226
|
"gpt-4o": "gpt-4o";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/types/project.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/types/project.ts"],"names":[],"mappings":"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"}
|