@rubytech/create-maxy-code 0.1.107 → 0.1.108
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/package.json +1 -1
- package/payload/platform/config/brand.json +1 -0
- package/payload/platform/plugins/.claude-plugin/marketplace.json +5 -0
- package/payload/platform/plugins/business-assistant/PLUGIN.md +4 -1
- package/payload/platform/plugins/docs/references/plugins-guide.md +8 -1
- package/payload/platform/plugins/venture-studio/.claude-plugin/plugin.json +8 -0
- package/payload/platform/plugins/venture-studio/PLUGIN.md +79 -0
- package/payload/platform/plugins/venture-studio/skills/brand-pack/SKILL.md +256 -0
- package/payload/platform/plugins/venture-studio/skills/brand-pack/references/color-psychology.md +118 -0
- package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/SKILL.md +109 -8
- package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/html-pdf-pipeline.md +1 -1
- package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/termsheet-template.md +1 -1
- package/payload/platform/plugins/venture-studio/skills/investor-data-room/templates/prospectus/index.html +1565 -0
- package/payload/platform/plugins/venture-studio/skills/investor-data-room/templates/prospectus/render-pdf.mjs +91 -0
- package/payload/platform/plugins/venture-studio/skills/investor-data-room/templates/prospectus/term_sheet.html +715 -0
- package/payload/platform/plugins/venture-studio/skills/office-hours/SKILL.md +588 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/SKILL.md +332 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/aarrr-metrics.md +275 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/assumption-testing.md +93 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/boolean-search.md +308 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/build-measure-learn.md +262 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/business-model-canvas.md +171 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/commitment-signals.md +246 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/design-thinking.md +183 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/earlyvangelist.md +190 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/first-principles.md +58 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/fishbone.md +114 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/five-whys.md +43 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/ice-scoring.md +237 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/innovation-accounting.md +290 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/jtbd.md +105 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/landing-page.md +361 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/market-type.md +167 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/mom-test.md +193 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/mvp-types.md +200 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/og-images.md +239 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/pareto.md +103 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/persona-development.md +291 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/pivot-types.md +225 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/positioning-statement.md +179 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/prd.md +363 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/pre-mortem.md +74 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/problem-validation.md +253 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/product-market-fit.md +256 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/research-synthesis.md +276 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/three-engines-of-growth.md +248 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/validation-tests.md +89 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/value-proposition-canvas.md +121 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/win-loss-analysis.md +242 -0
- package/payload/platform/plugins/venture-studio/skills/zero-to-prototype/references/workflow-mapping.md +271 -0
- package/payload/premium-plugins/.claude-plugin/marketplace.json +4 -4
- package/payload/premium-plugins/real-agent/plugins/brochures/skills/property-brochure/references/build.md +4 -5
- package/payload/premium-plugins/venture-studio/.claude-plugin/plugin.json +8 -0
- package/payload/premium-plugins/venture-studio/PLUGIN.md +79 -0
- package/payload/premium-plugins/venture-studio/skills/brand-pack/SKILL.md +256 -0
- package/payload/premium-plugins/venture-studio/skills/brand-pack/references/color-psychology.md +118 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/SKILL.md +359 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/business-plan-template.md +61 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/compliance-research-checklist.md +53 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/data-room-structure.md +77 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/deck-blueprint-template.md +38 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/design-tokens-application.md +79 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/html-pdf-pipeline.md +236 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/internal-workings-scrub.md +33 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/references/termsheet-template.md +88 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/templates/prospectus/index.html +1565 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/templates/prospectus/render-pdf.mjs +91 -0
- package/payload/premium-plugins/venture-studio/skills/investor-data-room/templates/prospectus/term_sheet.html +715 -0
- package/payload/premium-plugins/venture-studio/skills/office-hours/SKILL.md +588 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/SKILL.md +332 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/aarrr-metrics.md +275 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/assumption-testing.md +93 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/boolean-search.md +308 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/build-measure-learn.md +262 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/business-model-canvas.md +171 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/commitment-signals.md +246 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/design-thinking.md +183 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/earlyvangelist.md +190 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/first-principles.md +58 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/fishbone.md +114 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/five-whys.md +43 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/ice-scoring.md +237 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/innovation-accounting.md +290 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/jtbd.md +105 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/landing-page.md +361 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/market-type.md +167 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/mom-test.md +193 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/mvp-types.md +200 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/og-images.md +239 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/pareto.md +103 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/persona-development.md +291 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/pivot-types.md +225 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/positioning-statement.md +179 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/prd.md +363 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/pre-mortem.md +74 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/problem-validation.md +253 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/product-market-fit.md +256 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/research-synthesis.md +276 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/three-engines-of-growth.md +248 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/validation-tests.md +89 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/value-proposition-canvas.md +121 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/win-loss-analysis.md +242 -0
- package/payload/premium-plugins/venture-studio/skills/zero-to-prototype/references/workflow-mapping.md +271 -0
- package/payload/server/{chunk-TZD23CX6.js → chunk-AGFS3TVN.js} +44 -9
- package/payload/server/maxy-edge.js +1 -1
- package/payload/server/server.js +2 -2
- package/payload/premium-plugins/founder-pack/.claude-plugin/plugin.json +0 -8
- /package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/business-plan-template.md +0 -0
- /package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/compliance-research-checklist.md +0 -0
- /package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/data-room-structure.md +0 -0
- /package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/deck-blueprint-template.md +0 -0
- /package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/design-tokens-application.md +0 -0
- /package/payload/{premium-plugins/founder-pack → platform/plugins/venture-studio}/skills/investor-data-room/references/internal-workings-scrub.md +0 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
// Render an HTML document into an A4 PORTRAIT image-only PDF.
|
|
2
|
+
// Mirrors the property-brochure pipeline (skills/property-brochure/references/build.md).
|
|
3
|
+
// Each <section class="page"> is screenshot as ONE PNG; bound to A4 via img2pdf;
|
|
4
|
+
// linearized via qpdf. The HTML CSS sizes each .page to exactly A4 (210mm × 297mm).
|
|
5
|
+
//
|
|
6
|
+
// node render-pdf.mjs <input.html> <output.pdf> [scale]
|
|
7
|
+
|
|
8
|
+
import { chromium } from 'playwright';
|
|
9
|
+
import { execFileSync } from 'node:child_process';
|
|
10
|
+
import { mkdirSync, readdirSync, rmSync, statSync } from 'node:fs';
|
|
11
|
+
import { dirname, join, resolve, basename } from 'node:path';
|
|
12
|
+
import { fileURLToPath } from 'node:url';
|
|
13
|
+
|
|
14
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
15
|
+
|
|
16
|
+
const inputArg = process.argv[2];
|
|
17
|
+
const outputArg = process.argv[3];
|
|
18
|
+
const SCALE = parseFloat(process.argv[4] || '3.125'); // 3.125× → 300 dpi
|
|
19
|
+
if (!inputArg || !outputArg) {
|
|
20
|
+
console.error('Usage: node render-pdf.mjs <input.html> <output.pdf> [scale]');
|
|
21
|
+
process.exit(2);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const INPUT = resolve(inputArg);
|
|
25
|
+
const OUTPUT = resolve(outputArg);
|
|
26
|
+
const TMP = join(__dirname, `.tmp-${basename(INPUT, '.html')}`);
|
|
27
|
+
|
|
28
|
+
rmSync(TMP, { recursive: true, force: true });
|
|
29
|
+
mkdirSync(TMP, { recursive: true });
|
|
30
|
+
|
|
31
|
+
const browser = await chromium.launch();
|
|
32
|
+
const context = await browser.newContext({
|
|
33
|
+
viewport: { width: 794, height: 1123 }, // A4 portrait at 96 dpi
|
|
34
|
+
deviceScaleFactor: SCALE,
|
|
35
|
+
});
|
|
36
|
+
const page = await context.newPage();
|
|
37
|
+
await page.emulateMedia({ media: 'print' }); // trigger @media print rules
|
|
38
|
+
await page.goto(`file://${INPUT}`, { waitUntil: 'networkidle' });
|
|
39
|
+
|
|
40
|
+
// Hide screen-only chrome but DO NOT inject layout CSS — the HTML's @media print
|
|
41
|
+
// rules are responsible for sizing each .page to A4. Per the brochure pipeline.
|
|
42
|
+
await page.addStyleTag({ content: `
|
|
43
|
+
.pdf-btn { display: none !important; }
|
|
44
|
+
html, body { background: #fff !important; margin: 0 !important; }
|
|
45
|
+
` });
|
|
46
|
+
|
|
47
|
+
await page.evaluate(() => Promise.all(
|
|
48
|
+
Array.from(document.images, img => img.complete ? null : new Promise(r => { img.onload = img.onerror = r; }))
|
|
49
|
+
));
|
|
50
|
+
|
|
51
|
+
const sections = await page.$$('section.page');
|
|
52
|
+
if (!sections.length) {
|
|
53
|
+
console.error('No <section class="page"> found in', INPUT);
|
|
54
|
+
process.exit(3);
|
|
55
|
+
}
|
|
56
|
+
console.log(`Rendering ${sections.length} A4 page(s) from ${basename(INPUT)} at ${SCALE}× ...`);
|
|
57
|
+
|
|
58
|
+
// Per build.md: "Verify every page fits A4: measure scrollHeight for all .page elements"
|
|
59
|
+
// A4 portrait at 96 dpi is 1123 CSS px. Anything past that is content overflow that will
|
|
60
|
+
// be clipped by `overflow: hidden` and lost from the rendered PDF.
|
|
61
|
+
const A4_H = 1123;
|
|
62
|
+
let overflowed = false;
|
|
63
|
+
for (let i = 0; i < sections.length; i++) {
|
|
64
|
+
const box = await sections[i].boundingBox();
|
|
65
|
+
const scrollH = await sections[i].evaluate(el => el.scrollHeight);
|
|
66
|
+
const ok = scrollH <= A4_H + 2; // 2px slack
|
|
67
|
+
if (!ok) overflowed = true;
|
|
68
|
+
console.log(` page ${i + 1}: scrollHeight ${scrollH}px${ok ? '' : ` ⚠ EXCEEDS A4 (${A4_H}px) — content will be clipped`}`);
|
|
69
|
+
}
|
|
70
|
+
if (overflowed) {
|
|
71
|
+
console.error('\nOne or more <section class="page"> elements overflow A4 height. Split their content into separate <section class="page"> blocks. Aborting render.');
|
|
72
|
+
await browser.close();
|
|
73
|
+
process.exit(4);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
for (let i = 0; i < sections.length; i++) {
|
|
77
|
+
const file = join(TMP, `page-${String(i + 1).padStart(2, '0')}.png`);
|
|
78
|
+
await sections[i].scrollIntoViewIfNeeded();
|
|
79
|
+
await sections[i].screenshot({ path: file, type: 'png' });
|
|
80
|
+
const bytes = statSync(file).size;
|
|
81
|
+
console.log(` page ${i + 1}: ${(bytes / 1024).toFixed(0)} KB`);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
await browser.close();
|
|
85
|
+
|
|
86
|
+
const pngs = readdirSync(TMP).filter(f => f.startsWith('page-') && f.endsWith('.png')).sort().map(f => join(TMP, f));
|
|
87
|
+
const preLinear = join(TMP, 'pre-linearize.pdf');
|
|
88
|
+
execFileSync('img2pdf', ['--pagesize', '210mmx297mm', '--output', preLinear, ...pngs], { stdio: 'inherit' });
|
|
89
|
+
execFileSync('qpdf', ['--linearize', '--object-streams=disable', preLinear, OUTPUT], { stdio: 'inherit' });
|
|
90
|
+
|
|
91
|
+
console.log(`\nWrote ${OUTPUT}`);
|