popeye-cli 1.4.7 → 1.5.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/README.md +222 -63
- package/dist/adapters/gemini.d.ts +1 -0
- package/dist/adapters/gemini.d.ts.map +1 -1
- package/dist/adapters/gemini.js +9 -4
- package/dist/adapters/gemini.js.map +1 -1
- package/dist/adapters/grok.d.ts +1 -0
- package/dist/adapters/grok.d.ts.map +1 -1
- package/dist/adapters/grok.js +9 -4
- package/dist/adapters/grok.js.map +1 -1
- package/dist/adapters/openai.d.ts +1 -1
- package/dist/adapters/openai.d.ts.map +1 -1
- package/dist/adapters/openai.js +35 -9
- package/dist/adapters/openai.js.map +1 -1
- package/dist/cli/interactive.d.ts.map +1 -1
- package/dist/cli/interactive.js +42 -0
- package/dist/cli/interactive.js.map +1 -1
- package/dist/generators/all.d.ts +4 -1
- package/dist/generators/all.d.ts.map +1 -1
- package/dist/generators/all.js +2 -1
- package/dist/generators/all.js.map +1 -1
- package/dist/generators/doc-parser.d.ts +49 -0
- package/dist/generators/doc-parser.d.ts.map +1 -0
- package/dist/generators/doc-parser.js +336 -0
- package/dist/generators/doc-parser.js.map +1 -0
- package/dist/generators/templates/index.d.ts +4 -0
- package/dist/generators/templates/index.d.ts.map +1 -1
- package/dist/generators/templates/index.js +4 -0
- package/dist/generators/templates/index.js.map +1 -1
- package/dist/generators/templates/website-components.d.ts +33 -0
- package/dist/generators/templates/website-components.d.ts.map +1 -0
- package/dist/generators/templates/website-components.js +278 -0
- package/dist/generators/templates/website-components.js.map +1 -0
- package/dist/generators/templates/website-config.d.ts +41 -0
- package/dist/generators/templates/website-config.d.ts.map +1 -0
- package/dist/generators/templates/website-config.js +283 -0
- package/dist/generators/templates/website-config.js.map +1 -0
- package/dist/generators/templates/website-conversion.d.ts +27 -0
- package/dist/generators/templates/website-conversion.d.ts.map +1 -0
- package/dist/generators/templates/website-conversion.js +326 -0
- package/dist/generators/templates/website-conversion.js.map +1 -0
- package/dist/generators/templates/website-seo.d.ts +76 -0
- package/dist/generators/templates/website-seo.d.ts.map +1 -0
- package/dist/generators/templates/website-seo.js +326 -0
- package/dist/generators/templates/website-seo.js.map +1 -0
- package/dist/generators/templates/website.d.ts +14 -47
- package/dist/generators/templates/website.d.ts.map +1 -1
- package/dist/generators/templates/website.js +412 -499
- package/dist/generators/templates/website.js.map +1 -1
- package/dist/generators/website-context.d.ts +83 -0
- package/dist/generators/website-context.d.ts.map +1 -0
- package/dist/generators/website-context.js +190 -0
- package/dist/generators/website-context.js.map +1 -0
- package/dist/generators/website.d.ts +3 -0
- package/dist/generators/website.d.ts.map +1 -1
- package/dist/generators/website.js +73 -10
- package/dist/generators/website.js.map +1 -1
- package/dist/state/index.d.ts +27 -0
- package/dist/state/index.d.ts.map +1 -1
- package/dist/state/index.js +30 -0
- package/dist/state/index.js.map +1 -1
- package/dist/types/consensus.d.ts +3 -0
- package/dist/types/consensus.d.ts.map +1 -1
- package/dist/types/consensus.js +1 -0
- package/dist/types/consensus.js.map +1 -1
- package/dist/types/website-strategy.d.ts +263 -0
- package/dist/types/website-strategy.d.ts.map +1 -0
- package/dist/types/website-strategy.js +105 -0
- package/dist/types/website-strategy.js.map +1 -0
- package/dist/types/workflow.d.ts +15 -0
- package/dist/types/workflow.d.ts.map +1 -1
- package/dist/types/workflow.js +6 -0
- package/dist/types/workflow.js.map +1 -1
- package/dist/workflow/consensus.d.ts.map +1 -1
- package/dist/workflow/consensus.js +2 -0
- package/dist/workflow/consensus.js.map +1 -1
- package/dist/workflow/execution-mode.d.ts.map +1 -1
- package/dist/workflow/execution-mode.js +18 -0
- package/dist/workflow/execution-mode.js.map +1 -1
- package/dist/workflow/index.d.ts +3 -0
- package/dist/workflow/index.d.ts.map +1 -1
- package/dist/workflow/index.js +25 -0
- package/dist/workflow/index.js.map +1 -1
- package/dist/workflow/overview.d.ts +89 -0
- package/dist/workflow/overview.d.ts.map +1 -0
- package/dist/workflow/overview.js +354 -0
- package/dist/workflow/overview.js.map +1 -0
- package/dist/workflow/plan-mode.d.ts +2 -1
- package/dist/workflow/plan-mode.d.ts.map +1 -1
- package/dist/workflow/plan-mode.js +83 -5
- package/dist/workflow/plan-mode.js.map +1 -1
- package/dist/workflow/website-strategy.d.ts +70 -0
- package/dist/workflow/website-strategy.d.ts.map +1 -0
- package/dist/workflow/website-strategy.js +238 -0
- package/dist/workflow/website-strategy.js.map +1 -0
- package/dist/workflow/website-updater.d.ts +17 -0
- package/dist/workflow/website-updater.d.ts.map +1 -0
- package/dist/workflow/website-updater.js +105 -0
- package/dist/workflow/website-updater.js.map +1 -0
- package/dist/workflow/workflow-logger.d.ts +1 -1
- package/dist/workflow/workflow-logger.d.ts.map +1 -1
- package/dist/workflow/workflow-logger.js.map +1 -1
- package/package.json +1 -1
- package/src/adapters/gemini.ts +10 -4
- package/src/adapters/grok.ts +10 -4
- package/src/adapters/openai.ts +38 -6
- package/src/cli/interactive.ts +47 -0
- package/src/generators/all.ts +6 -1
- package/src/generators/doc-parser.ts +372 -0
- package/src/generators/templates/index.ts +4 -0
- package/src/generators/templates/website-components.ts +305 -0
- package/src/generators/templates/website-config.ts +291 -0
- package/src/generators/templates/website-conversion.ts +341 -0
- package/src/generators/templates/website-seo.ts +370 -0
- package/src/generators/templates/website.ts +451 -505
- package/src/generators/website-context.ts +265 -0
- package/src/generators/website.ts +109 -19
- package/src/state/index.ts +42 -0
- package/src/types/consensus.ts +3 -0
- package/src/types/website-strategy.ts +243 -0
- package/src/types/workflow.ts +15 -0
- package/src/workflow/consensus.ts +2 -0
- package/src/workflow/execution-mode.ts +21 -0
- package/src/workflow/index.ts +25 -0
- package/src/workflow/overview.ts +469 -0
- package/src/workflow/plan-mode.ts +115 -4
- package/src/workflow/website-strategy.ts +305 -0
- package/src/workflow/website-updater.ts +131 -0
- package/src/workflow/workflow-logger.ts +1 -0
- package/tests/adapters/persona-switching.test.ts +63 -0
- package/tests/generators/website-components.test.ts +159 -0
- package/tests/generators/website-context.test.ts +222 -0
- package/tests/generators/website-seo-quality.test.ts +246 -0
- package/tests/workflow/overview.test.ts +392 -0
- package/tests/workflow/website-strategy.test.ts +191 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../../src/generators/templates/website.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../../src/generators/templates/website.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Website content context builder
|
|
3
|
+
* Discovers user documentation and brand assets to populate website templates
|
|
4
|
+
* with project-specific content instead of generic placeholders
|
|
5
|
+
*/
|
|
6
|
+
import type { WebsiteStrategyDocument, BrandAssetsContract } from '../types/website-strategy.js';
|
|
7
|
+
/**
|
|
8
|
+
* Structured content context for website generation
|
|
9
|
+
*/
|
|
10
|
+
export interface WebsiteContentContext {
|
|
11
|
+
productName: string;
|
|
12
|
+
tagline?: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
features: Array<{
|
|
15
|
+
title: string;
|
|
16
|
+
description: string;
|
|
17
|
+
}>;
|
|
18
|
+
pricing?: Array<{
|
|
19
|
+
name: string;
|
|
20
|
+
price: string;
|
|
21
|
+
period?: string;
|
|
22
|
+
description: string;
|
|
23
|
+
features: string[];
|
|
24
|
+
cta: string;
|
|
25
|
+
featured?: boolean;
|
|
26
|
+
}>;
|
|
27
|
+
brand?: {
|
|
28
|
+
primaryColor?: string;
|
|
29
|
+
colorScheme?: Record<string, string>;
|
|
30
|
+
logoPath?: string;
|
|
31
|
+
};
|
|
32
|
+
rawDocs: string;
|
|
33
|
+
/** Website marketing strategy (generated by AI from product context) */
|
|
34
|
+
strategy?: WebsiteStrategyDocument;
|
|
35
|
+
/** Resolved brand assets contract for deterministic logo/favicon placement */
|
|
36
|
+
brandAssets?: BrandAssetsContract;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolve brand assets into a deterministic contract
|
|
40
|
+
* Searches for logo/favicon in project directory, sets canonical output paths
|
|
41
|
+
*
|
|
42
|
+
* @param cwd - Directory to scan for brand assets
|
|
43
|
+
* @param brandContext - Optional existing brand context from state
|
|
44
|
+
* @returns Resolved brand assets contract
|
|
45
|
+
*/
|
|
46
|
+
export declare function resolveBrandAssets(cwd: string, brandContext?: {
|
|
47
|
+
logoPath?: string;
|
|
48
|
+
primaryColor?: string;
|
|
49
|
+
}): Promise<BrandAssetsContract>;
|
|
50
|
+
/**
|
|
51
|
+
* Discover project documentation files in a directory
|
|
52
|
+
*
|
|
53
|
+
* @param cwd - Directory to scan for documentation
|
|
54
|
+
* @returns Array of absolute paths to discovered doc files
|
|
55
|
+
*/
|
|
56
|
+
export declare function discoverProjectDocs(cwd: string): Promise<string[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Find brand assets (logo files) in a directory
|
|
59
|
+
*
|
|
60
|
+
* @param cwd - Directory to scan for brand assets
|
|
61
|
+
* @returns Object with optional logoPath
|
|
62
|
+
*/
|
|
63
|
+
export declare function findBrandAssets(cwd: string): Promise<{
|
|
64
|
+
logoPath?: string;
|
|
65
|
+
}>;
|
|
66
|
+
/**
|
|
67
|
+
* Read and concatenate project documentation files
|
|
68
|
+
*
|
|
69
|
+
* @param docPaths - Array of absolute paths to doc files
|
|
70
|
+
* @param maxLength - Maximum combined length (default 15000 chars)
|
|
71
|
+
* @returns Combined documentation content with file headers
|
|
72
|
+
*/
|
|
73
|
+
export declare function readProjectDocs(docPaths: string[], maxLength?: number): Promise<string>;
|
|
74
|
+
/**
|
|
75
|
+
* Build a structured website content context from discovered docs
|
|
76
|
+
*
|
|
77
|
+
* @param cwd - Working directory to scan for docs
|
|
78
|
+
* @param projectName - The project name (folder name fallback)
|
|
79
|
+
* @param specification - Optional expanded specification text
|
|
80
|
+
* @returns Structured content context for website templates
|
|
81
|
+
*/
|
|
82
|
+
export declare function buildWebsiteContext(cwd: string, projectName: string, specification?: string): Promise<WebsiteContentContext>;
|
|
83
|
+
//# sourceMappingURL=website-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website-context.d.ts","sourceRoot":"","sources":["../../src/generators/website-context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEjG;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IACH,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,8EAA8E;IAC9E,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,mBAAmB,CAAC,CAU9B;AA6BD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAiDxE;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAsBhC;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAAE,EAClB,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,qBAAqB,CAAC,CA6BhC"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Website content context builder
|
|
3
|
+
* Discovers user documentation and brand assets to populate website templates
|
|
4
|
+
* with project-specific content instead of generic placeholders
|
|
5
|
+
*/
|
|
6
|
+
import { promises as fs } from 'node:fs';
|
|
7
|
+
import path from 'node:path';
|
|
8
|
+
import { stripCodeFences, extractProductName, extractTagline, extractDescription, extractFeatures, extractPricing, extractPrimaryColor, } from './doc-parser.js';
|
|
9
|
+
/**
|
|
10
|
+
* Resolve brand assets into a deterministic contract
|
|
11
|
+
* Searches for logo/favicon in project directory, sets canonical output paths
|
|
12
|
+
*
|
|
13
|
+
* @param cwd - Directory to scan for brand assets
|
|
14
|
+
* @param brandContext - Optional existing brand context from state
|
|
15
|
+
* @returns Resolved brand assets contract
|
|
16
|
+
*/
|
|
17
|
+
export async function resolveBrandAssets(cwd, brandContext) {
|
|
18
|
+
const assets = await findBrandAssets(cwd);
|
|
19
|
+
const logoPath = brandContext?.logoPath || assets.logoPath;
|
|
20
|
+
const ext = logoPath ? path.extname(logoPath) : '.svg';
|
|
21
|
+
return {
|
|
22
|
+
logoPath,
|
|
23
|
+
logoOutputPath: `public/brand/logo${ext}`,
|
|
24
|
+
primaryColor: brandContext?.primaryColor,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
/** Patterns to match documentation files */
|
|
28
|
+
const DOC_PATTERNS = [
|
|
29
|
+
/spec/i,
|
|
30
|
+
/pricing/i,
|
|
31
|
+
/color/i,
|
|
32
|
+
/brand/i,
|
|
33
|
+
/ui[\s_-]?spec/i,
|
|
34
|
+
/^readme\.md$/i,
|
|
35
|
+
/overview/i,
|
|
36
|
+
/features/i,
|
|
37
|
+
/product/i,
|
|
38
|
+
];
|
|
39
|
+
/** Directories to exclude from scanning */
|
|
40
|
+
const EXCLUDED_DIRS = [
|
|
41
|
+
'node_modules',
|
|
42
|
+
'.popeye',
|
|
43
|
+
'.git',
|
|
44
|
+
'dist',
|
|
45
|
+
'build',
|
|
46
|
+
'.next',
|
|
47
|
+
'__pycache__',
|
|
48
|
+
'venv',
|
|
49
|
+
'.venv',
|
|
50
|
+
'coverage',
|
|
51
|
+
];
|
|
52
|
+
/**
|
|
53
|
+
* Discover project documentation files in a directory
|
|
54
|
+
*
|
|
55
|
+
* @param cwd - Directory to scan for documentation
|
|
56
|
+
* @returns Array of absolute paths to discovered doc files
|
|
57
|
+
*/
|
|
58
|
+
export async function discoverProjectDocs(cwd) {
|
|
59
|
+
const docs = [];
|
|
60
|
+
try {
|
|
61
|
+
const entries = await fs.readdir(cwd, { withFileTypes: true });
|
|
62
|
+
for (const entry of entries) {
|
|
63
|
+
if (entry.isDirectory() && EXCLUDED_DIRS.includes(entry.name)) {
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
66
|
+
if (entry.isFile() && entry.name.endsWith('.md')) {
|
|
67
|
+
const matches = DOC_PATTERNS.some((pattern) => pattern.test(entry.name));
|
|
68
|
+
if (matches) {
|
|
69
|
+
docs.push(path.join(cwd, entry.name));
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// Check one level of subdirectories (e.g., docs/)
|
|
73
|
+
if (entry.isDirectory() && entry.name === 'docs') {
|
|
74
|
+
try {
|
|
75
|
+
const subEntries = await fs.readdir(path.join(cwd, entry.name), {
|
|
76
|
+
withFileTypes: true,
|
|
77
|
+
});
|
|
78
|
+
for (const subEntry of subEntries) {
|
|
79
|
+
if (subEntry.isFile() && subEntry.name.endsWith('.md')) {
|
|
80
|
+
docs.push(path.join(cwd, entry.name, subEntry.name));
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
// Skip unreadable directories
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
// Directory not accessible
|
|
92
|
+
}
|
|
93
|
+
// Sort: color/brand docs first (small but critical), then others
|
|
94
|
+
// This ensures brand context isn't truncated by the maxLength cap
|
|
95
|
+
docs.sort((a, b) => {
|
|
96
|
+
const nameA = path.basename(a).toLowerCase();
|
|
97
|
+
const nameB = path.basename(b).toLowerCase();
|
|
98
|
+
const priorityA = /color|brand/.test(nameA) ? 0 : 1;
|
|
99
|
+
const priorityB = /color|brand/.test(nameB) ? 0 : 1;
|
|
100
|
+
return priorityA - priorityB;
|
|
101
|
+
});
|
|
102
|
+
return docs;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Find brand assets (logo files) in a directory
|
|
106
|
+
*
|
|
107
|
+
* @param cwd - Directory to scan for brand assets
|
|
108
|
+
* @returns Object with optional logoPath
|
|
109
|
+
*/
|
|
110
|
+
export async function findBrandAssets(cwd) {
|
|
111
|
+
const logoExtensions = ['.png', '.svg', '.jpg', '.jpeg', '.webp'];
|
|
112
|
+
try {
|
|
113
|
+
const entries = await fs.readdir(cwd, { withFileTypes: true });
|
|
114
|
+
for (const entry of entries) {
|
|
115
|
+
if (!entry.isFile())
|
|
116
|
+
continue;
|
|
117
|
+
const lowerName = entry.name.toLowerCase();
|
|
118
|
+
const hasLogoInName = lowerName.includes('logo');
|
|
119
|
+
const hasValidExt = logoExtensions.some((ext) => lowerName.endsWith(ext));
|
|
120
|
+
if (hasLogoInName && hasValidExt) {
|
|
121
|
+
return { logoPath: path.join(cwd, entry.name) };
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
catch {
|
|
126
|
+
// Directory not accessible
|
|
127
|
+
}
|
|
128
|
+
return {};
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Read and concatenate project documentation files
|
|
132
|
+
*
|
|
133
|
+
* @param docPaths - Array of absolute paths to doc files
|
|
134
|
+
* @param maxLength - Maximum combined length (default 15000 chars)
|
|
135
|
+
* @returns Combined documentation content with file headers
|
|
136
|
+
*/
|
|
137
|
+
export async function readProjectDocs(docPaths, maxLength = 15000) {
|
|
138
|
+
const sections = [];
|
|
139
|
+
let totalLength = 0;
|
|
140
|
+
for (const docPath of docPaths) {
|
|
141
|
+
if (totalLength >= maxLength)
|
|
142
|
+
break;
|
|
143
|
+
try {
|
|
144
|
+
const content = await fs.readFile(docPath, 'utf-8');
|
|
145
|
+
const fileName = path.basename(docPath);
|
|
146
|
+
const header = `--- ${fileName} ---`;
|
|
147
|
+
const remaining = maxLength - totalLength;
|
|
148
|
+
const trimmedContent = content.length > remaining ? content.slice(0, remaining) + '...' : content;
|
|
149
|
+
sections.push(`${header}\n${trimmedContent}`);
|
|
150
|
+
totalLength += header.length + 1 + trimmedContent.length;
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
// Skip unreadable files
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
return sections.join('\n\n');
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Build a structured website content context from discovered docs
|
|
160
|
+
*
|
|
161
|
+
* @param cwd - Working directory to scan for docs
|
|
162
|
+
* @param projectName - The project name (folder name fallback)
|
|
163
|
+
* @param specification - Optional expanded specification text
|
|
164
|
+
* @returns Structured content context for website templates
|
|
165
|
+
*/
|
|
166
|
+
export async function buildWebsiteContext(cwd, projectName, specification) {
|
|
167
|
+
const docPaths = await discoverProjectDocs(cwd);
|
|
168
|
+
const rawDocs = docPaths.length > 0 ? await readProjectDocs(docPaths) : '';
|
|
169
|
+
const brandAssets = await findBrandAssets(cwd);
|
|
170
|
+
// Strip markdown code fences that wrap entire doc files
|
|
171
|
+
const cleanDocs = stripCodeFences(rawDocs);
|
|
172
|
+
const context = {
|
|
173
|
+
productName: extractProductName(cleanDocs, specification) || projectName,
|
|
174
|
+
features: extractFeatures(cleanDocs, specification),
|
|
175
|
+
rawDocs,
|
|
176
|
+
};
|
|
177
|
+
context.tagline = extractTagline(cleanDocs, context.productName);
|
|
178
|
+
context.description = extractDescription(cleanDocs, specification);
|
|
179
|
+
context.pricing = extractPricing(cleanDocs);
|
|
180
|
+
// Extract brand info
|
|
181
|
+
if (brandAssets.logoPath) {
|
|
182
|
+
context.brand = { ...context.brand, logoPath: brandAssets.logoPath };
|
|
183
|
+
}
|
|
184
|
+
const primaryColor = extractPrimaryColor(cleanDocs);
|
|
185
|
+
if (primaryColor) {
|
|
186
|
+
context.brand = { ...context.brand, primaryColor };
|
|
187
|
+
}
|
|
188
|
+
return context;
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=website-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website-context.js","sourceRoot":"","sources":["../../src/generators/website-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Creates SEO-ready Next.js marketing website
|
|
4
4
|
*/
|
|
5
5
|
import type { ProjectSpec } from '../types/project.js';
|
|
6
|
+
import type { WebsiteContentContext } from './website-context.js';
|
|
6
7
|
/**
|
|
7
8
|
* Project generation result
|
|
8
9
|
*/
|
|
@@ -26,6 +27,8 @@ export interface WebsiteGeneratorOptions {
|
|
|
26
27
|
skipDocker?: boolean;
|
|
27
28
|
/** Skip README (fullstack has root README) */
|
|
28
29
|
skipReadme?: boolean;
|
|
30
|
+
/** Content context from user docs for populating templates */
|
|
31
|
+
contentContext?: WebsiteContentContext;
|
|
29
32
|
}
|
|
30
33
|
/**
|
|
31
34
|
* Generate a complete Next.js website project
|
|
@@ -1 +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;
|
|
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;AA0CvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE;;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;IACrB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAgBD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,gBAAgB,CAAC,CAiQ3B;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"}
|
|
@@ -4,7 +4,11 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { promises as fs } from 'node:fs';
|
|
6
6
|
import path from 'node:path';
|
|
7
|
-
import {
|
|
7
|
+
import { generateWebsiteLayout, generateWebsiteGlobalsCss, generateWebsiteLandingPage, generateWebsitePricingPage, generateWebsiteReadme, generateWebsiteSpec, generateWebsiteTest, generateWebsiteDocsPage, generateWebsiteBlogPage, } from './templates/website.js';
|
|
8
|
+
import { generateWebsitePackageJson, generateNextConfig, generateWebsiteTsconfig, generateWebsiteTailwindConfig, generateWebsitePostcssConfig, generateWebsiteDockerfile, generateWebsiteVitestConfig, generateWebsiteVitestSetup, generateWebsiteNextEnv, } from './templates/website-config.js';
|
|
9
|
+
import { generateWebsiteHeader, generateWebsiteFooter, generateWebsiteNavigation, } from './templates/website-components.js';
|
|
10
|
+
import { generateJsonLdComponent, generateEnhancedSitemap, generateEnhancedRobots, generate404Page, generate500Page, generateWebManifest, generateMetaHelper, } from './templates/website-seo.js';
|
|
11
|
+
import { generateLeadCaptureRoute, generateContactForm, generateLeadCaptureEnvExample, } from './templates/website-conversion.js';
|
|
8
12
|
/**
|
|
9
13
|
* Create a directory if it doesn't exist
|
|
10
14
|
*/
|
|
@@ -28,7 +32,7 @@ async function writeFile(filePath, content) {
|
|
|
28
32
|
export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
29
33
|
const { baseDir,
|
|
30
34
|
// packageName reserved for future use
|
|
31
|
-
workspaceMode = false, skipDocker = false, skipReadme = false, } = options;
|
|
35
|
+
workspaceMode = false, skipDocker = false, skipReadme = false, contentContext, } = options;
|
|
32
36
|
const projectName = spec.name || 'my-project';
|
|
33
37
|
// In workspace mode with baseDir, use it directly; otherwise create subdirectory
|
|
34
38
|
const projectDir = baseDir || path.join(outputDir, projectName);
|
|
@@ -40,11 +44,13 @@ export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
|
40
44
|
await ensureDir(path.join(projectDir, 'src', 'app', 'pricing'));
|
|
41
45
|
await ensureDir(path.join(projectDir, 'src', 'app', 'docs'));
|
|
42
46
|
await ensureDir(path.join(projectDir, 'src', 'app', 'blog'));
|
|
47
|
+
await ensureDir(path.join(projectDir, 'src', 'app', 'api', 'lead'));
|
|
43
48
|
await ensureDir(path.join(projectDir, 'src', 'components'));
|
|
44
49
|
await ensureDir(path.join(projectDir, 'src', 'lib'));
|
|
45
50
|
await ensureDir(path.join(projectDir, 'content', 'blog'));
|
|
46
51
|
await ensureDir(path.join(projectDir, 'content', 'docs'));
|
|
47
52
|
await ensureDir(path.join(projectDir, 'public'));
|
|
53
|
+
await ensureDir(path.join(projectDir, 'public', 'brand'));
|
|
48
54
|
await ensureDir(path.join(projectDir, 'tests'));
|
|
49
55
|
// Only create .popeye dir in standalone mode
|
|
50
56
|
if (!workspaceMode) {
|
|
@@ -84,19 +90,19 @@ export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
|
84
90
|
// App Router files
|
|
85
91
|
{
|
|
86
92
|
path: path.join(projectDir, 'src', 'app', 'layout.tsx'),
|
|
87
|
-
content: generateWebsiteLayout(projectName),
|
|
93
|
+
content: generateWebsiteLayout(projectName, contentContext),
|
|
88
94
|
},
|
|
89
95
|
{
|
|
90
96
|
path: path.join(projectDir, 'src', 'app', 'globals.css'),
|
|
91
|
-
content: generateWebsiteGlobalsCss(),
|
|
97
|
+
content: generateWebsiteGlobalsCss(contentContext),
|
|
92
98
|
},
|
|
93
99
|
{
|
|
94
100
|
path: path.join(projectDir, 'src', 'app', 'page.tsx'),
|
|
95
|
-
content: generateWebsiteLandingPage(projectName),
|
|
101
|
+
content: generateWebsiteLandingPage(projectName, contentContext),
|
|
96
102
|
},
|
|
97
103
|
{
|
|
98
104
|
path: path.join(projectDir, 'src', 'app', 'pricing', 'page.tsx'),
|
|
99
|
-
content: generateWebsitePricingPage(projectName),
|
|
105
|
+
content: generateWebsitePricingPage(projectName, contentContext),
|
|
100
106
|
},
|
|
101
107
|
{
|
|
102
108
|
path: path.join(projectDir, 'src', 'app', 'docs', 'page.tsx'),
|
|
@@ -106,14 +112,58 @@ export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
|
106
112
|
path: path.join(projectDir, 'src', 'app', 'blog', 'page.tsx'),
|
|
107
113
|
content: generateWebsiteBlogPage(),
|
|
108
114
|
},
|
|
115
|
+
// Shared components
|
|
116
|
+
{
|
|
117
|
+
path: path.join(projectDir, 'src', 'components', 'Header.tsx'),
|
|
118
|
+
content: generateWebsiteHeader(projectName, contentContext, contentContext?.strategy),
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
path: path.join(projectDir, 'src', 'components', 'Footer.tsx'),
|
|
122
|
+
content: generateWebsiteFooter(projectName, contentContext, contentContext?.strategy),
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
path: path.join(projectDir, 'src', 'components', 'JsonLd.tsx'),
|
|
126
|
+
content: generateJsonLdComponent(),
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
path: path.join(projectDir, 'src', 'components', 'ContactForm.tsx'),
|
|
130
|
+
content: generateContactForm(contentContext?.strategy),
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
path: path.join(projectDir, 'src', 'lib', 'navigation.ts'),
|
|
134
|
+
content: generateWebsiteNavigation(contentContext?.strategy),
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
path: path.join(projectDir, 'src', 'lib', 'metadata.ts'),
|
|
138
|
+
content: generateMetaHelper(projectName, contentContext?.strategy),
|
|
139
|
+
},
|
|
140
|
+
// Lead capture API route
|
|
141
|
+
{
|
|
142
|
+
path: path.join(projectDir, 'src', 'app', 'api', 'lead', 'route.ts'),
|
|
143
|
+
content: generateLeadCaptureRoute(contentContext?.strategy?.conversionStrategy.leadCapture || 'webhook'),
|
|
144
|
+
},
|
|
109
145
|
// SEO files
|
|
110
146
|
{
|
|
111
147
|
path: path.join(projectDir, 'src', 'app', 'sitemap.ts'),
|
|
112
|
-
content:
|
|
148
|
+
content: generateEnhancedSitemap(projectName, contentContext?.strategy),
|
|
113
149
|
},
|
|
114
150
|
{
|
|
115
151
|
path: path.join(projectDir, 'src', 'app', 'robots.ts'),
|
|
116
|
-
content:
|
|
152
|
+
content: generateEnhancedRobots(projectName),
|
|
153
|
+
},
|
|
154
|
+
// Error pages
|
|
155
|
+
{
|
|
156
|
+
path: path.join(projectDir, 'src', 'app', 'not-found.tsx'),
|
|
157
|
+
content: generate404Page(projectName, contentContext),
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
path: path.join(projectDir, 'src', 'app', 'error.tsx'),
|
|
161
|
+
content: generate500Page(projectName),
|
|
162
|
+
},
|
|
163
|
+
// PWA manifest
|
|
164
|
+
{
|
|
165
|
+
path: path.join(projectDir, 'public', 'manifest.webmanifest'),
|
|
166
|
+
content: generateWebManifest(projectName, contentContext),
|
|
117
167
|
},
|
|
118
168
|
// Test files
|
|
119
169
|
{
|
|
@@ -148,7 +198,8 @@ export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
|
148
198
|
// Environment
|
|
149
199
|
{
|
|
150
200
|
path: path.join(projectDir, '.env.example'),
|
|
151
|
-
content: 'NEXT_PUBLIC_SITE_URL=http://localhost:3001\nNEXT_PUBLIC_APP_URL=http://localhost:3000\n'
|
|
201
|
+
content: 'NEXT_PUBLIC_SITE_URL=http://localhost:3001\nNEXT_PUBLIC_APP_URL=http://localhost:3000\n' +
|
|
202
|
+
generateLeadCaptureEnvExample(contentContext?.strategy?.conversionStrategy.leadCapture || 'webhook'),
|
|
152
203
|
},
|
|
153
204
|
{
|
|
154
205
|
path: path.join(projectDir, '.gitignore'),
|
|
@@ -159,9 +210,21 @@ export async function generateWebsiteProject(spec, outputDir, options = {}) {
|
|
|
159
210
|
if (!workspaceMode) {
|
|
160
211
|
files.push({
|
|
161
212
|
path: path.join(projectDir, '.popeye', 'website-spec.json'),
|
|
162
|
-
content: generateWebsiteSpec(projectName),
|
|
213
|
+
content: generateWebsiteSpec(projectName, contentContext),
|
|
163
214
|
});
|
|
164
215
|
}
|
|
216
|
+
// Copy logo to public/ if brand context has one
|
|
217
|
+
if (contentContext?.brand?.logoPath) {
|
|
218
|
+
try {
|
|
219
|
+
const logoExt = path.extname(contentContext.brand.logoPath);
|
|
220
|
+
const destPath = path.join(projectDir, 'public', `logo${logoExt}`);
|
|
221
|
+
await fs.copyFile(contentContext.brand.logoPath, destPath);
|
|
222
|
+
filesCreated.push(destPath);
|
|
223
|
+
}
|
|
224
|
+
catch {
|
|
225
|
+
// Non-blocking: logo copy failure should not stop generation
|
|
226
|
+
}
|
|
227
|
+
}
|
|
165
228
|
// Add README if not skipped
|
|
166
229
|
if (!skipReadme) {
|
|
167
230
|
files.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../src/generators/website.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,uBAAuB,EACvB,6BAA6B,EAC7B,4BAA4B,EAC5B,
|
|
1
|
+
{"version":3,"file":"website.js","sourceRoot":"","sources":["../../src/generators/website.ts"],"names":[],"mappings":"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"}
|
package/dist/state/index.d.ts
CHANGED
|
@@ -113,6 +113,33 @@ export declare function storePlan(projectDir: string, plan: string): Promise<Pro
|
|
|
113
113
|
* @returns The updated state
|
|
114
114
|
*/
|
|
115
115
|
export declare function storeSpecification(projectDir: string, specification: string): Promise<ProjectState>;
|
|
116
|
+
/**
|
|
117
|
+
* Store discovered user documentation in project state
|
|
118
|
+
*
|
|
119
|
+
* @param projectDir - The project root directory
|
|
120
|
+
* @param userDocs - Combined user documentation content
|
|
121
|
+
* @returns The updated state
|
|
122
|
+
*/
|
|
123
|
+
export declare function storeUserDocs(projectDir: string, userDocs: string): Promise<ProjectState>;
|
|
124
|
+
/**
|
|
125
|
+
* Store brand context in project state
|
|
126
|
+
*
|
|
127
|
+
* @param projectDir - The project root directory
|
|
128
|
+
* @param brandContext - Brand context with logo path and primary color
|
|
129
|
+
* @returns The updated state
|
|
130
|
+
*/
|
|
131
|
+
export declare function storeBrandContext(projectDir: string, brandContext: {
|
|
132
|
+
logoPath?: string;
|
|
133
|
+
primaryColor?: string;
|
|
134
|
+
}): Promise<ProjectState>;
|
|
135
|
+
/**
|
|
136
|
+
* Store website strategy path in project state
|
|
137
|
+
*
|
|
138
|
+
* @param projectDir - The project root directory
|
|
139
|
+
* @param strategyPath - Relative path to strategy JSON file
|
|
140
|
+
* @returns The updated state
|
|
141
|
+
*/
|
|
142
|
+
export declare function storeWebsiteStrategyPath(projectDir: string, strategyPath: string): Promise<ProjectState>;
|
|
116
143
|
/**
|
|
117
144
|
* Mark the project as complete
|
|
118
145
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"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"}
|
package/dist/state/index.js
CHANGED
|
@@ -244,6 +244,36 @@ export async function storePlan(projectDir, plan) {
|
|
|
244
244
|
export async function storeSpecification(projectDir, specification) {
|
|
245
245
|
return updateState(projectDir, { specification });
|
|
246
246
|
}
|
|
247
|
+
/**
|
|
248
|
+
* Store discovered user documentation in project state
|
|
249
|
+
*
|
|
250
|
+
* @param projectDir - The project root directory
|
|
251
|
+
* @param userDocs - Combined user documentation content
|
|
252
|
+
* @returns The updated state
|
|
253
|
+
*/
|
|
254
|
+
export async function storeUserDocs(projectDir, userDocs) {
|
|
255
|
+
return updateState(projectDir, { userDocs });
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Store brand context in project state
|
|
259
|
+
*
|
|
260
|
+
* @param projectDir - The project root directory
|
|
261
|
+
* @param brandContext - Brand context with logo path and primary color
|
|
262
|
+
* @returns The updated state
|
|
263
|
+
*/
|
|
264
|
+
export async function storeBrandContext(projectDir, brandContext) {
|
|
265
|
+
return updateState(projectDir, { brandContext });
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Store website strategy path in project state
|
|
269
|
+
*
|
|
270
|
+
* @param projectDir - The project root directory
|
|
271
|
+
* @param strategyPath - Relative path to strategy JSON file
|
|
272
|
+
* @returns The updated state
|
|
273
|
+
*/
|
|
274
|
+
export async function storeWebsiteStrategyPath(projectDir, strategyPath) {
|
|
275
|
+
return updateState(projectDir, { websiteStrategy: strategyPath });
|
|
276
|
+
}
|
|
247
277
|
/**
|
|
248
278
|
* Mark the project as complete
|
|
249
279
|
*
|