howone 0.1.20 → 0.1.22
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/templates/vite/.howone/skills/hallmark/LICENSE +21 -0
- package/templates/vite/.howone/skills/hallmark/README.md +147 -0
- package/templates/vite/.howone/skills/hallmark/ROADMAP.md +201 -0
- package/templates/vite/.howone/skills/hallmark/SKILL.md +551 -0
- package/templates/vite/.howone/skills/hallmark/docs/recipes.md +186 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-anya.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-bananastudio.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-hyperlane.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-najm.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-slow-pour.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-soroe.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-tally.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/screenshots/hero-wayfare.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/docs/study-examples.md +176 -0
- package/templates/vite/.howone/skills/hallmark/docs/talk-slides.md +364 -0
- package/templates/vite/.howone/skills/hallmark/package.json +36 -0
- package/templates/vite/.howone/skills/hallmark/references/anti-patterns.md +412 -0
- package/templates/vite/.howone/skills/hallmark/references/assets.md +399 -0
- package/templates/vite/.howone/skills/hallmark/references/color.md +95 -0
- package/templates/vite/.howone/skills/hallmark/references/component-cookbook.md +256 -0
- package/templates/vite/.howone/skills/hallmark/references/components/c1-outlined-chip.md +12 -0
- package/templates/vite/.howone/skills/hallmark/references/components/c2-inline-form-as-cta.md +16 -0
- package/templates/vite/.howone/skills/hallmark/references/components/c3-typographic-link.md +8 -0
- package/templates/vite/.howone/skills/hallmark/references/components/c4-sticky-bottom-bar.md +16 -0
- package/templates/vite/.howone/skills/hallmark/references/components/f1-bento-grid.md +20 -0
- package/templates/vite/.howone/skills/hallmark/references/components/f2-sticky-scroll-stack.md +20 -0
- package/templates/vite/.howone/skills/hallmark/references/components/f3-tabular-spec-sheet.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/f4-step-sequence.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/f5-annotated-screenshot.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/f6-product-card-grid.md +41 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft1-mast-headed.md +13 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft2-inline-rule-single-line.md +10 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft3-index-style-category-list.md +12 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft4-dense-typographic.md +10 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft5-statement.md +21 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft6-letter-close.md +19 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft7-newsletter-first.md +27 -0
- package/templates/vite/.howone/skills/hallmark/references/components/ft8-marquee-scroll.md +25 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h1-marquee.md +15 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h2-split-diptych.md +15 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h3-quote-led.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h4-stat-led.md +14 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h5-letter-hero.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h6-photographic-fold.md +16 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h7-demo-video-clipped-by-viewport-edge.md +27 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h8-mockup-split-browser-framed.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/components/h9-custom-illustration-centerpiece.md +27 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n1-wordmark-2-links.md +12 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n10-floating-on-scroll-morph.md +19 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n2-floating-chip.md +14 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n3-side-rail.md +14 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n4-hidden-behind-k.md +9 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n5-floating-pill.md +28 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n6-newspaper-masthead.md +24 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n7-brutal-slab.md +22 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n8-terminal-command.md +21 -0
- package/templates/vite/.howone/skills/hallmark/references/components/n9-edge-aligned-minimal.md +17 -0
- package/templates/vite/.howone/skills/hallmark/references/components/s1-left-margin-numbered.md +15 -0
- package/templates/vite/.howone/skills/hallmark/references/components/s2-hanging.md +13 -0
- package/templates/vite/.howone/skills/hallmark/references/components/s3-sticky-pinned.md +19 -0
- package/templates/vite/.howone/skills/hallmark/references/components/s4-inline-no-break.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/s5-bottom-anchored.md +13 -0
- package/templates/vite/.howone/skills/hallmark/references/components/t1-pull-quote-with-marginalia.md +12 -0
- package/templates/vite/.howone/skills/hallmark/references/components/t2-logo-wall-hairline.md +19 -0
- package/templates/vite/.howone/skills/hallmark/references/components/t3-single-huge-quote.md +11 -0
- package/templates/vite/.howone/skills/hallmark/references/components/t4-numbered-stat-strip.md +14 -0
- package/templates/vite/.howone/skills/hallmark/references/contract.md +24 -0
- package/templates/vite/.howone/skills/hallmark/references/copy.md +182 -0
- package/templates/vite/.howone/skills/hallmark/references/custom-craft.md +626 -0
- package/templates/vite/.howone/skills/hallmark/references/custom-theme.md +329 -0
- package/templates/vite/.howone/skills/hallmark/references/design-md.md +116 -0
- package/templates/vite/.howone/skills/hallmark/references/export-formats.md +328 -0
- package/templates/vite/.howone/skills/hallmark/references/floating-nav.md +89 -0
- package/templates/vite/.howone/skills/hallmark/references/genres/atmospheric.md +65 -0
- package/templates/vite/.howone/skills/hallmark/references/genres/editorial.md +70 -0
- package/templates/vite/.howone/skills/hallmark/references/genres/modern-minimal.md +67 -0
- package/templates/vite/.howone/skills/hallmark/references/genres/playful.md +65 -0
- package/templates/vite/.howone/skills/hallmark/references/hero-enrichment.md +474 -0
- package/templates/vite/.howone/skills/hallmark/references/imagery-kit.md +170 -0
- package/templates/vite/.howone/skills/hallmark/references/interaction-and-states.md +207 -0
- package/templates/vite/.howone/skills/hallmark/references/layout-and-space.md +111 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/01-bento-grid.md +35 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/02-long-document.md +34 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/03-marquee-hero.md +31 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/04-stat-led.md +32 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/05-workbench.md +32 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/06-conversational-faq.md +33 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/07-manifesto.md +32 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/08-photographic.md +34 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/09-quote-led.md +32 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/10-specimen.md +32 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/11-catalogue.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/12-letter.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/13-index-first.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/14-narrative-workflow.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/15-split-studio.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/16-feature-stack.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/17-type-specimen.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/18-portfolio-grid.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/19-map-diagram.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/20-ecosystem-index.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures/21-component-playground.md +23 -0
- package/templates/vite/.howone/skills/hallmark/references/macrostructures.md +89 -0
- package/templates/vite/.howone/skills/hallmark/references/microinteractions.md +260 -0
- package/templates/vite/.howone/skills/hallmark/references/motion.md +109 -0
- package/templates/vite/.howone/skills/hallmark/references/preview-examples.md +49 -0
- package/templates/vite/.howone/skills/hallmark/references/responsive.md +138 -0
- package/templates/vite/.howone/skills/hallmark/references/slop-test.md +205 -0
- package/templates/vite/.howone/skills/hallmark/references/structure.md +164 -0
- package/templates/vite/.howone/skills/hallmark/references/study.md +486 -0
- package/templates/vite/.howone/skills/hallmark/references/typography.md +243 -0
- package/templates/vite/.howone/skills/hallmark/references/verbs/audit.md +25 -0
- package/templates/vite/.howone/skills/hallmark/references/verbs/redesign.md +269 -0
- package/templates/vite/.howone/skills/hallmark/site/OG-hallmark.png +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/01-tide-podcast/brief.md +71 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/01-tide-podcast/index.html +64 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/01-tide-podcast/style.css +240 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/02-streampipe-cli/brief.md +65 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/02-streampipe-cli/index.html +105 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/02-streampipe-cli/style.css +250 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/03-maple-bakery/brief.md +64 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/03-maple-bakery/index.html +131 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/03-maple-bakery/style.css +240 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/04-meridian-manifesto/brief.md +67 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/04-meridian-manifesto/index.html +86 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/04-meridian-manifesto/style.css +262 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/05-tracejam-saas/brief.md +63 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/05-tracejam-saas/index.html +167 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/05-tracejam-saas/style.css +457 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/06-anya-portfolio/brief.md +65 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/06-anya-portfolio/index.html +159 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/06-anya-portfolio/style.css +288 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/07-foundry-compliance/brief.md +64 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/07-foundry-compliance/index.html +146 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/07-foundry-compliance/style.css +484 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/08-cohort-courses/brief.md +64 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/08-cohort-courses/index.html +116 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/08-cohort-courses/style.css +354 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/09-slow-pour/index.html +638 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/10-owl-hours/index.html +515 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/11-soroe-ceramics/index.html +515 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/12-loafer/index.html +608 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/13-alma/index.html +587 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/README.md +157 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/BananaStudio-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/BananaStudio-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Hyperlane-example.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Hyperlane-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Najm-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Najm-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Podcast-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/SaaS-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/SaaS-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Soroe-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/Soroe-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/after-quiet-hour.png +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/anya-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/anya-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/audit-example.png +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/before-quiet-hour.png +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/example-redesign-uractivation.png +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/slow-pour-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/slow-pour-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/study-example.png +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/uractivation-after-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/wayfare-loop.mp4 +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/_thumbs/wayfare-still.jpg +0 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/01-coffeebox/index.html +77 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/01-coffeebox/style.css +238 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/02-loop/index.html +110 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/02-loop/style.css +326 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/03-mossroot/index.html +134 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/03-mossroot/style.css +262 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/custom/README.md +30 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/README.md +17 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/audit/audit-report.md +56 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/audit/input.html +160 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/audit/notes.md +29 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/redesign/input.html +63 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/redesign/notes.md +72 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/redesign/output.html +374 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/study/diagnosis.md +52 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/study/input-description.md +29 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/study/notes.md +61 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/study/output.css +193 -0
- package/templates/vite/.howone/skills/hallmark/site/_tests/verbs/study/output.html +66 -0
- package/templates/vite/.howone/skills/hallmark/site/css/base.css +194 -0
- package/templates/vite/.howone/skills/hallmark/site/css/components.css +4886 -0
- package/templates/vite/.howone/skills/hallmark/site/css/sections.css +2072 -0
- package/templates/vite/.howone/skills/hallmark/site/css/tokens.css +1129 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/bananastudio/index.html +475 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/bananastudio/styles.css +1584 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/bananastudio/tokens.css +96 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/hyperlane/index.html +344 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/hyperlane/script.js +103 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/hyperlane/styles.css +1103 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/hyperlane/tokens.css +83 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/najm/index.html +368 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/najm/script.js +133 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/najm/styles.css +1062 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/najm/tokens.css +97 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/tally/app.js +84 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/tally/index.html +446 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/tally/styles.css +1087 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/tally/tokens.css +101 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/wayfare/index.html +359 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/wayfare/style.css +1168 -0
- package/templates/vite/.howone/skills/hallmark/site/examples/wayfare/tokens.css +81 -0
- package/templates/vite/.howone/skills/hallmark/site/favicon-dark.svg +5 -0
- package/templates/vite/.howone/skills/hallmark/site/favicon-light.svg +5 -0
- package/templates/vite/.howone/skills/hallmark/site/index.html +1043 -0
- package/templates/vite/.howone/skills/hallmark/site/js/main.js +1175 -0
- package/templates/vite/.howone/skills/hallmark/vercel.json +6 -0
- package/templates/vite/.howone/skills/howone-sdk/01-architect/01-app-generation.md +101 -0
- package/templates/vite/.howone/skills/howone-sdk/02-database/01-schema-design.md +147 -0
- package/templates/vite/.howone/skills/howone-sdk/02-database/02-schema-operations.md +96 -0
- package/templates/vite/.howone/skills/howone-sdk/02-database/03-data-access-patterns.md +172 -0
- package/templates/vite/.howone/skills/howone-sdk/{references → 03-sdk}/01-client-setup.md +3 -3
- package/templates/vite/.howone/skills/howone-sdk/{references/04-auth.md → 03-sdk/03-auth.md} +120 -3
- package/templates/vite/.howone/skills/howone-sdk/04-ai/.gitkeep +1 -0
- package/templates/vite/.howone/skills/howone-sdk/SKILL.md +67 -93
- package/templates/vite/.howone/skills/howone-sdk/agents/openai.yaml +3 -3
- package/templates/vite/.howone/skills/impeccable/SKILL.md +168 -0
- package/templates/vite/.howone/skills/impeccable/agents/impeccable-asset-producer.md +101 -0
- package/templates/vite/.howone/skills/impeccable/reference/adapt.md +190 -0
- package/templates/vite/.howone/skills/impeccable/reference/animate.md +175 -0
- package/templates/vite/.howone/skills/impeccable/reference/audit.md +133 -0
- package/templates/vite/.howone/skills/impeccable/reference/bolder.md +113 -0
- package/templates/vite/.howone/skills/impeccable/reference/brand.md +118 -0
- package/templates/vite/.howone/skills/impeccable/reference/clarify.md +174 -0
- package/templates/vite/.howone/skills/impeccable/reference/codex.md +105 -0
- package/templates/vite/.howone/skills/impeccable/reference/cognitive-load.md +106 -0
- package/templates/vite/.howone/skills/impeccable/reference/color-and-contrast.md +105 -0
- package/templates/vite/.howone/skills/impeccable/reference/colorize.md +154 -0
- package/templates/vite/.howone/skills/impeccable/reference/craft.md +123 -0
- package/templates/vite/.howone/skills/impeccable/reference/critique.md +273 -0
- package/templates/vite/.howone/skills/impeccable/reference/delight.md +302 -0
- package/templates/vite/.howone/skills/impeccable/reference/distill.md +111 -0
- package/templates/vite/.howone/skills/impeccable/reference/document.md +427 -0
- package/templates/vite/.howone/skills/impeccable/reference/extract.md +69 -0
- package/templates/vite/.howone/skills/impeccable/reference/harden.md +347 -0
- package/templates/vite/.howone/skills/impeccable/reference/heuristics-scoring.md +234 -0
- package/templates/vite/.howone/skills/impeccable/reference/interaction-design.md +195 -0
- package/templates/vite/.howone/skills/impeccable/reference/layout.md +141 -0
- package/templates/vite/.howone/skills/impeccable/reference/live.md +622 -0
- package/templates/vite/.howone/skills/impeccable/reference/motion-design.md +109 -0
- package/templates/vite/.howone/skills/impeccable/reference/onboard.md +234 -0
- package/templates/vite/.howone/skills/impeccable/reference/optimize.md +258 -0
- package/templates/vite/.howone/skills/impeccable/reference/overdrive.md +130 -0
- package/templates/vite/.howone/skills/impeccable/reference/personas.md +179 -0
- package/templates/vite/.howone/skills/impeccable/reference/polish.md +242 -0
- package/templates/vite/.howone/skills/impeccable/reference/product.md +62 -0
- package/templates/vite/.howone/skills/impeccable/reference/quieter.md +99 -0
- package/templates/vite/.howone/skills/impeccable/reference/responsive-design.md +114 -0
- package/templates/vite/.howone/skills/impeccable/reference/shape.md +165 -0
- package/templates/vite/.howone/skills/impeccable/reference/spatial-design.md +100 -0
- package/templates/vite/.howone/skills/impeccable/reference/teach.md +156 -0
- package/templates/vite/.howone/skills/impeccable/reference/typeset.md +124 -0
- package/templates/vite/.howone/skills/impeccable/reference/typography.md +159 -0
- package/templates/vite/.howone/skills/impeccable/reference/ux-writing.md +107 -0
- package/templates/vite/.howone/skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
- package/templates/vite/.howone/skills/impeccable/scripts/command-metadata.json +94 -0
- package/templates/vite/.howone/skills/impeccable/scripts/critique-storage.mjs +242 -0
- package/templates/vite/.howone/skills/impeccable/scripts/design-parser.mjs +820 -0
- package/templates/vite/.howone/skills/impeccable/scripts/detect-csp.mjs +198 -0
- package/templates/vite/.howone/skills/impeccable/scripts/detect.mjs +21 -0
- package/templates/vite/.howone/skills/impeccable/scripts/impeccable-paths.mjs +110 -0
- package/templates/vite/.howone/skills/impeccable/scripts/is-generated.mjs +69 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-accept.mjs +595 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-browser-session.js +123 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-browser.js +4860 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-complete.mjs +75 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-completion.mjs +18 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-inject.mjs +446 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-poll.mjs +200 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-resume.mjs +48 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-server.mjs +838 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-session-store.mjs +254 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-status.mjs +47 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live-wrap.mjs +632 -0
- package/templates/vite/.howone/skills/impeccable/scripts/live.mjs +247 -0
- package/templates/vite/.howone/skills/impeccable/scripts/load-context.mjs +141 -0
- package/templates/vite/.howone/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/templates/vite/.howone/skills/impeccable/scripts/pin.mjs +214 -0
- package/templates/vite/AGENTS.md +2 -12
- package/templates/vite/package.json +1 -1
- /package/templates/vite/.howone/skills/howone-sdk/{references/08-manifest-codegen.md → 01-architect/02-manifest-codegen.md} +0 -0
- /package/templates/vite/.howone/skills/howone-sdk/{references → 03-sdk}/02-entity-operations.md +0 -0
- /package/templates/vite/.howone/skills/howone-sdk/{references/06-react-integration.md → 03-sdk/04-react-integration.md} +0 -0
- /package/templates/vite/.howone/skills/howone-sdk/{references → 03-sdk}/05-file-upload.md +0 -0
- /package/templates/vite/.howone/skills/howone-sdk/{references/07-raw-http.md → 03-sdk/06-raw-http.md} +0 -0
- /package/templates/vite/.howone/skills/howone-sdk/{references/03-ai-actions.md → 03-sdk/07-ai-action-calls.md} +0 -0
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
/* Hallmark · macrostructure: Index-First · F4 sidebar-toc knobs: width=12rem, sticky=true, numbered=00-04
|
|
2
|
+
* theme: Plain · accent: deep-ink-blue ~2% (used as section-num + one rule)
|
|
3
|
+
* enrichment: none (typography only — restraint is the credibility signal)
|
|
4
|
+
* studied: no · context: skipped, inferred (personal / portfolio domain) · v0.6.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
:root {
|
|
8
|
+
--color-paper: oklch(100% 0 0);
|
|
9
|
+
--color-paper-2: oklch(98% 0.005 240);
|
|
10
|
+
--color-rule: oklch(88% 0.006 240);
|
|
11
|
+
--color-ink: oklch(18% 0.012 245);
|
|
12
|
+
--color-ink-soft: oklch(48% 0.014 245);
|
|
13
|
+
--color-ink-muted: oklch(70% 0.014 245);
|
|
14
|
+
--color-accent: oklch(36% 0.18 248);
|
|
15
|
+
|
|
16
|
+
--font-display: "Inter Tight", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
17
|
+
--font-body: "Inter Tight", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
18
|
+
--font-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;
|
|
19
|
+
|
|
20
|
+
--space-3xs: 0.25rem;
|
|
21
|
+
--space-2xs: 0.5rem;
|
|
22
|
+
--space-xs: 0.75rem;
|
|
23
|
+
--space-sm: 1rem;
|
|
24
|
+
--space-md: 1.5rem;
|
|
25
|
+
--space-lg: 2rem;
|
|
26
|
+
--space-xl: 3rem;
|
|
27
|
+
--space-2xl: 4.5rem;
|
|
28
|
+
--space-3xl: 6.5rem;
|
|
29
|
+
|
|
30
|
+
--measure-prose: 60ch;
|
|
31
|
+
|
|
32
|
+
--ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
|
|
33
|
+
--dur-micro: 120ms;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
* { box-sizing: border-box; }
|
|
37
|
+
html, body { overflow-x: clip; }
|
|
38
|
+
|
|
39
|
+
body {
|
|
40
|
+
margin: 0;
|
|
41
|
+
background: var(--color-paper);
|
|
42
|
+
color: var(--color-ink);
|
|
43
|
+
font-family: var(--font-body);
|
|
44
|
+
font-size: 1rem;
|
|
45
|
+
line-height: 1.55;
|
|
46
|
+
-webkit-font-smoothing: antialiased;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.page {
|
|
50
|
+
display: grid;
|
|
51
|
+
grid-template-columns: 14rem 1fr;
|
|
52
|
+
gap: var(--space-3xl);
|
|
53
|
+
max-width: 76rem;
|
|
54
|
+
margin: 0 auto;
|
|
55
|
+
padding: var(--space-2xl) var(--space-lg) var(--space-3xl);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/* Sidebar TOC */
|
|
59
|
+
.toc {
|
|
60
|
+
position: sticky;
|
|
61
|
+
top: var(--space-2xl);
|
|
62
|
+
align-self: start;
|
|
63
|
+
height: fit-content;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.toc__brand {
|
|
67
|
+
font-family: var(--font-display);
|
|
68
|
+
font-size: 0.875rem;
|
|
69
|
+
letter-spacing: 0.06em;
|
|
70
|
+
text-transform: uppercase;
|
|
71
|
+
color: var(--color-ink);
|
|
72
|
+
margin: 0 0 var(--space-3xs);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.toc__role {
|
|
76
|
+
font-family: var(--font-mono);
|
|
77
|
+
font-size: 0.75rem;
|
|
78
|
+
letter-spacing: 0.04em;
|
|
79
|
+
color: var(--color-ink-soft);
|
|
80
|
+
margin: 0 0 var(--space-xl);
|
|
81
|
+
display: block;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.toc__list {
|
|
85
|
+
list-style: none;
|
|
86
|
+
padding: 0;
|
|
87
|
+
margin: 0 0 var(--space-xl);
|
|
88
|
+
display: grid;
|
|
89
|
+
gap: var(--space-2xs);
|
|
90
|
+
border-block-start: 1px solid var(--color-rule);
|
|
91
|
+
padding-block-start: var(--space-md);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.toc__list a {
|
|
95
|
+
display: grid;
|
|
96
|
+
grid-template-columns: 3.25ch 1fr;
|
|
97
|
+
gap: var(--space-sm);
|
|
98
|
+
font-family: var(--font-mono);
|
|
99
|
+
font-size: 0.8125rem;
|
|
100
|
+
letter-spacing: 0.02em;
|
|
101
|
+
color: var(--color-ink-soft);
|
|
102
|
+
text-decoration: none;
|
|
103
|
+
padding: var(--space-3xs) 0;
|
|
104
|
+
transition: color var(--dur-micro) var(--ease-out);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.toc__list a:hover, .toc__list a:focus-visible { color: var(--color-accent); }
|
|
108
|
+
.toc__list a:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
|
|
109
|
+
|
|
110
|
+
.toc__list .num { color: var(--color-accent); }
|
|
111
|
+
|
|
112
|
+
.toc__meta {
|
|
113
|
+
font-family: var(--font-mono);
|
|
114
|
+
font-size: 0.6875rem;
|
|
115
|
+
letter-spacing: 0.04em;
|
|
116
|
+
color: var(--color-ink-muted);
|
|
117
|
+
border-block-start: 1px solid var(--color-rule);
|
|
118
|
+
padding-block-start: var(--space-sm);
|
|
119
|
+
display: grid;
|
|
120
|
+
gap: var(--space-3xs);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/* Main content column */
|
|
124
|
+
.main { min-width: 0; max-width: 56rem; }
|
|
125
|
+
|
|
126
|
+
.section {
|
|
127
|
+
margin-block-end: var(--space-3xl);
|
|
128
|
+
scroll-margin-top: var(--space-2xl);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.section:first-of-type { margin-block-start: 0; }
|
|
132
|
+
|
|
133
|
+
.section__num {
|
|
134
|
+
font-family: var(--font-mono);
|
|
135
|
+
font-size: 0.75rem;
|
|
136
|
+
letter-spacing: 0.12em;
|
|
137
|
+
text-transform: uppercase;
|
|
138
|
+
color: var(--color-accent);
|
|
139
|
+
margin: 0 0 var(--space-md);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.section__head {
|
|
143
|
+
font-family: var(--font-display);
|
|
144
|
+
font-size: clamp(2rem, 4vw, 3rem);
|
|
145
|
+
font-weight: 600;
|
|
146
|
+
line-height: 1.05;
|
|
147
|
+
letter-spacing: -0.025em;
|
|
148
|
+
margin: 0 0 var(--space-lg);
|
|
149
|
+
color: var(--color-ink);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.section__head--lede { font-size: clamp(2.5rem, 5vw, 4rem); }
|
|
153
|
+
|
|
154
|
+
.section__body {
|
|
155
|
+
font-size: 1.0625rem;
|
|
156
|
+
line-height: 1.6;
|
|
157
|
+
color: var(--color-ink);
|
|
158
|
+
max-width: var(--measure-prose);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.section__body p { margin: 0 0 var(--space-md); }
|
|
162
|
+
.section__body p:last-child { margin-block-end: 0; }
|
|
163
|
+
.section__body strong { color: var(--color-accent); font-weight: 500; }
|
|
164
|
+
|
|
165
|
+
/* Tabular work history */
|
|
166
|
+
.years {
|
|
167
|
+
width: 100%;
|
|
168
|
+
border-collapse: collapse;
|
|
169
|
+
font-size: 0.9375rem;
|
|
170
|
+
font-variant-numeric: tabular-nums;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.years thead th {
|
|
174
|
+
text-align: start;
|
|
175
|
+
padding: var(--space-2xs) var(--space-md) var(--space-2xs) 0;
|
|
176
|
+
font-family: var(--font-mono);
|
|
177
|
+
font-size: 0.75rem;
|
|
178
|
+
letter-spacing: 0.06em;
|
|
179
|
+
text-transform: uppercase;
|
|
180
|
+
color: var(--color-ink-soft);
|
|
181
|
+
font-weight: 400;
|
|
182
|
+
border-block-end: 1px solid var(--color-rule);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.years tbody td {
|
|
186
|
+
padding: var(--space-md) var(--space-md) var(--space-md) 0;
|
|
187
|
+
border-block-end: 1px solid var(--color-rule);
|
|
188
|
+
vertical-align: baseline;
|
|
189
|
+
color: var(--color-ink);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.years td:first-child {
|
|
193
|
+
font-family: var(--font-mono);
|
|
194
|
+
color: var(--color-ink-soft);
|
|
195
|
+
width: 12ch;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
.years td:nth-child(2) {
|
|
199
|
+
font-weight: 500;
|
|
200
|
+
width: 18ch;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
.years td:last-child { color: var(--color-ink-soft); }
|
|
204
|
+
|
|
205
|
+
/* Writing list */
|
|
206
|
+
.writing {
|
|
207
|
+
list-style: none;
|
|
208
|
+
padding: 0;
|
|
209
|
+
margin: 0;
|
|
210
|
+
display: grid;
|
|
211
|
+
gap: var(--space-md);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.writing li {
|
|
215
|
+
display: grid;
|
|
216
|
+
grid-template-columns: 8ch 1fr;
|
|
217
|
+
gap: var(--space-md);
|
|
218
|
+
align-items: baseline;
|
|
219
|
+
border-block-end: 1px solid var(--color-rule);
|
|
220
|
+
padding-block-end: var(--space-md);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
.writing li:last-child { border-block-end: none; padding-block-end: 0; }
|
|
224
|
+
|
|
225
|
+
.writing__date {
|
|
226
|
+
font-family: var(--font-mono);
|
|
227
|
+
font-size: 0.8125rem;
|
|
228
|
+
color: var(--color-ink-soft);
|
|
229
|
+
font-variant-numeric: tabular-nums;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.writing a {
|
|
233
|
+
color: var(--color-ink);
|
|
234
|
+
text-decoration: none;
|
|
235
|
+
border-block-end: 1px solid var(--color-rule);
|
|
236
|
+
padding-block-end: 1px;
|
|
237
|
+
transition: color var(--dur-micro) var(--ease-out),
|
|
238
|
+
border-color var(--dur-micro) var(--ease-out);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.writing a:hover, .writing a:focus-visible {
|
|
242
|
+
color: var(--color-accent);
|
|
243
|
+
border-color: var(--color-accent);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
.writing a:focus-visible {
|
|
247
|
+
outline: 2px solid var(--color-accent);
|
|
248
|
+
outline-offset: 4px;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
.writing__sub {
|
|
252
|
+
display: block;
|
|
253
|
+
font-size: 0.875rem;
|
|
254
|
+
color: var(--color-ink-soft);
|
|
255
|
+
margin-block-start: var(--space-3xs);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
/* Contact */
|
|
259
|
+
.contact {
|
|
260
|
+
display: grid;
|
|
261
|
+
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
|
262
|
+
gap: var(--space-md);
|
|
263
|
+
font-family: var(--font-mono);
|
|
264
|
+
font-size: 0.875rem;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
.contact__row {
|
|
268
|
+
border: 1px solid var(--color-rule);
|
|
269
|
+
padding: var(--space-md);
|
|
270
|
+
display: grid;
|
|
271
|
+
gap: var(--space-2xs);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
.contact__label { color: var(--color-ink-soft); font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; }
|
|
275
|
+
.contact__value a { color: var(--color-ink); text-decoration: none; transition: color var(--dur-micro) var(--ease-out); }
|
|
276
|
+
.contact__value a:hover, .contact__value a:focus-visible { color: var(--color-accent); }
|
|
277
|
+
.contact__value a:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
|
|
278
|
+
|
|
279
|
+
@media (max-width: 64rem) {
|
|
280
|
+
.page { grid-template-columns: 1fr; gap: var(--space-2xl); }
|
|
281
|
+
.toc { position: static; border-block-end: 1px solid var(--color-rule); padding-block-end: var(--space-lg); }
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
@media (max-width: 40rem) {
|
|
285
|
+
.page { padding: var(--space-xl) var(--space-md) var(--space-2xl); }
|
|
286
|
+
.years td:first-child { width: 10ch; }
|
|
287
|
+
.writing li { grid-template-columns: 1fr; }
|
|
288
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Test 07 v2 — Foundry (SOC2 / ISO27001 compliance)
|
|
2
|
+
|
|
3
|
+
## The prompt (verbatim, same as v1)
|
|
4
|
+
|
|
5
|
+
> "Build a landing page for Foundry — SOC2 and ISO 27001 compliance automation for B2B SaaS. Show: how many companies got compliant, what it costs, who uses it. Audience: founders + CTOs. Tone: technical but trustworthy."
|
|
6
|
+
|
|
7
|
+
## Step 0 · Pre-flight
|
|
8
|
+
|
|
9
|
+
> *"No pre-flight signals — proceeding with full Hallmark stack."*
|
|
10
|
+
|
|
11
|
+
## Step 1 · Design-context gate — fully answered
|
|
12
|
+
|
|
13
|
+
Audience, use, tone all explicit.
|
|
14
|
+
|
|
15
|
+
## Step 2.5 · Project memory rotation
|
|
16
|
+
|
|
17
|
+
> *"Previous run on this brief picked Stat-Led + Plain + none. Picking from {Bento Grid, Workbench, Marquee Hero} for the macro this time — Bento Grid wins because the brief says 'show how many · what it costs · who uses it' (three different signals; Bento is the macro built to carry multiple parallel proofs)."*
|
|
18
|
+
>
|
|
19
|
+
> *"Theme rotation: Plain (light · display-heavy · cool-deep-ink-blue) → Newsprint (light · roman-serif · warm-deep-red). Differs on display style and accent hue. Passes."*
|
|
20
|
+
|
|
21
|
+
## Step 3 · Visual ruleset loaded
|
|
22
|
+
|
|
23
|
+
`macrostructures.md` (Bento Grid), `component-cookbook.md` (F1 bento knobs, big-stat tile, logo-grid tile, pricing-card tile, testimonial-card tile, FAQ teaser), `typography.md` (Newsprint pairing — Source Serif Pro display + Geist body), `color.md` (Newsprint palette — warm cream paper, warm-deep-red accent), `microinteractions.md` (default-on for SaaS — counter on stat tile, focus-visible on CTAs, hover-rule on tier card), `anti-patterns.md`.
|
|
24
|
+
|
|
25
|
+
## Step 4 · Hero enrichment
|
|
26
|
+
|
|
27
|
+
> *"Enrichment: Tier-A pure-CSS logo wall (8 monochrome wordmarks set as `<svg>` text marks). No real customer logos (placeholder), no Lottie, no Midjourney. The Bento accommodates a logo grid as one tile rather than a separate section."*
|
|
28
|
+
|
|
29
|
+
## Step 5 · Preview
|
|
30
|
+
|
|
31
|
+
```markdown
|
|
32
|
+
**Hallmark · v0.6.0**
|
|
33
|
+
|
|
34
|
+
- **Macrostructure** · Bento Grid
|
|
35
|
+
- **Theme** · Newsprint (warm-cream paper · Source Serif Pro display · warm-deep-red accent ~3%)
|
|
36
|
+
- **Enrichment** · Tier-A pure-CSS logo grid (8 wordmark placeholders, mono)
|
|
37
|
+
- **Sections** · Masthead · Hero (left-bias) · 6-tile Bento (stat · logos · pricing · testimonial · features · FAQ teaser) · CTA strip · Colophon
|
|
38
|
+
- **Motion** · counter on hero stat · pulse-once on featured tier (2 primitives)
|
|
39
|
+
- **Slop test** · 38 / 38 ✓
|
|
40
|
+
- **Diversification** · differs from v1 (Stat-Led/Plain) on macrostructure + display style + accent hue
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Step 6 · Macrostructure stamp
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
/* Hallmark · macrostructure: Bento Grid · F1 bento knobs: tiles=6, spans=irregular, accent=corner-only
|
|
47
|
+
* theme: Newsprint · accent: warm-deep-red ~3% · enrichment: tier-A CSS logo grid (8 mono wordmarks)
|
|
48
|
+
* studied: no · context: explicit · v0.6.0
|
|
49
|
+
*/
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## What changed vs v1
|
|
53
|
+
|
|
54
|
+
- **Macro:** Stat-Led → Bento Grid. v1 led with "847" sized at 22 rem and structured the rest as a 9-section linear SaaS page; v2 places the 847 inside a bento tile alongside five other parallel proofs (logos, pricing, testimonial, features, FAQ). Same data, different choreography.
|
|
55
|
+
- **Theme:** Plain → Newsprint. v1's pure-white #fff with deep ink-blue becomes warm-cream with warm-deep-red. The page reads less Klim-Type-Foundry and more *NYT Cooking* — still trustworthy, less austere.
|
|
56
|
+
- **Enrichment:** v1 had no enrichment (typography-only Stat-Led); v2 adds a Tier-A logo grid as one bento tile. Compliance pages need social proof, and a logo wall does that without a separate section.
|
|
57
|
+
- **Section count:** v1 had 9 linear sections (logos · stats · features · testimonials · pricing · FAQ · CTA · footer); v2 collapses into 6 bento tiles + a CTA strip + a colophon.
|
|
58
|
+
|
|
59
|
+
## What stayed the same
|
|
60
|
+
|
|
61
|
+
- Brand: Foundry, SOC2/ISO27001 automation.
|
|
62
|
+
- The "847 companies" anchor stat.
|
|
63
|
+
- Three-tier pricing.
|
|
64
|
+
- Slop test: 38 / 38 ✓.
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>Foundry — SOC 2 & ISO 27001 compliance for B2B SaaS</title>
|
|
7
|
+
<meta name="description" content="847 companies passed audit using Foundry. Average time to compliant: thirty-one days." />
|
|
8
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
9
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
10
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,wght@0,400;0,500;0,600;1,400&family=Geist:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap" />
|
|
11
|
+
<link rel="stylesheet" href="style.css" />
|
|
12
|
+
</head>
|
|
13
|
+
<body>
|
|
14
|
+
<main class="page">
|
|
15
|
+
<header class="masthead">
|
|
16
|
+
<span>est. 2024 · Lisbon & New York</span>
|
|
17
|
+
<span class="masthead__brand">Foundry<span class="dot">.</span></span>
|
|
18
|
+
<nav class="masthead__nav">
|
|
19
|
+
<a href="#bento">Proof</a>
|
|
20
|
+
<a href="#bento">Pricing</a>
|
|
21
|
+
<a href="#">Docs</a>
|
|
22
|
+
<a href="#">Sign in</a>
|
|
23
|
+
</nav>
|
|
24
|
+
</header>
|
|
25
|
+
|
|
26
|
+
<section class="hero">
|
|
27
|
+
<div class="hero__copy">
|
|
28
|
+
<p class="hero__eyebrow">SOC 2 · ISO 27001 · automated</p>
|
|
29
|
+
<h1 class="hero__head">Compliance, ground out in <em>days</em>, not in months.</h1>
|
|
30
|
+
<p class="hero__sub">
|
|
31
|
+
Foundry runs the controls, the evidence collection, and the audit timeline for B2B SaaS
|
|
32
|
+
teams that don't have a security org yet. Founders open accounts on Tuesdays and pass audit
|
|
33
|
+
by month-end. The proof is below.
|
|
34
|
+
</p>
|
|
35
|
+
<div class="hero__cta">
|
|
36
|
+
<a class="btn btn--primary" href="#">14-day trial <span aria-hidden="true">→</span></a>
|
|
37
|
+
<a class="btn" href="#">Talk to sales</a>
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
<aside class="hero__pull">
|
|
41
|
+
<p class="hero__pull-quote">
|
|
42
|
+
"We passed Type II in seven weeks with one engineer halftime. The auditor accepted ninety
|
|
43
|
+
per cent of the evidence Foundry assembled with no edits."
|
|
44
|
+
</p>
|
|
45
|
+
<p class="hero__pull-attr">— Matt H., CTO at Tracejam · 18-person team</p>
|
|
46
|
+
</aside>
|
|
47
|
+
</section>
|
|
48
|
+
|
|
49
|
+
<section class="bento" id="bento">
|
|
50
|
+
<article class="tile tile--stat" aria-labelledby="stat-h">
|
|
51
|
+
<span class="tile__corner" aria-hidden="true"></span>
|
|
52
|
+
<p class="tile__label" id="stat-h">Companies audited</p>
|
|
53
|
+
<p class="tile__stat">847<span class="tile__stat-dot">.</span></p>
|
|
54
|
+
<p class="tile__stat-cap">
|
|
55
|
+
companies passed audit using Foundry. Average time to compliant: thirty-one days, against
|
|
56
|
+
an industry average of nine months.
|
|
57
|
+
</p>
|
|
58
|
+
</article>
|
|
59
|
+
|
|
60
|
+
<article class="tile tile--logos" aria-labelledby="logos-h">
|
|
61
|
+
<p class="tile__label" id="logos-h">In production at</p>
|
|
62
|
+
<p class="tile__body">Eight wordmarks. Logos shown with consent. Full customer list in the trust report.</p>
|
|
63
|
+
<ul class="logos" role="list">
|
|
64
|
+
<li class="logos__item">Tracejam<span class="dot">.</span></li>
|
|
65
|
+
<li class="logos__item">Maple <span class="dot">·</span></li>
|
|
66
|
+
<li class="logos__item">Knot</li>
|
|
67
|
+
<li class="logos__item">Tide<span class="dot">/</span></li>
|
|
68
|
+
<li class="logos__item">Streampipe</li>
|
|
69
|
+
<li class="logos__item">Cohort</li>
|
|
70
|
+
<li class="logos__item">Meridian</li>
|
|
71
|
+
<li class="logos__item">Anya<span class="dot">.</span>dev</li>
|
|
72
|
+
</ul>
|
|
73
|
+
</article>
|
|
74
|
+
|
|
75
|
+
<article class="tile tile--pricing" aria-labelledby="price-h">
|
|
76
|
+
<p class="tile__label" id="price-h">Three plans, one price each</p>
|
|
77
|
+
<div class="tiers">
|
|
78
|
+
<div class="tier-card">
|
|
79
|
+
<p class="tier-card__name">Starter</p>
|
|
80
|
+
<p class="tier-card__price">$299 <span class="tier-card__per">/ mo</span></p>
|
|
81
|
+
</div>
|
|
82
|
+
<div class="tier-card tier-card--feature">
|
|
83
|
+
<p class="tier-card__name">Team</p>
|
|
84
|
+
<p class="tier-card__price">$899 <span class="tier-card__per">/ mo</span></p>
|
|
85
|
+
</div>
|
|
86
|
+
<div class="tier-card">
|
|
87
|
+
<p class="tier-card__name">Scale</p>
|
|
88
|
+
<p class="tier-card__price">Custom</p>
|
|
89
|
+
</div>
|
|
90
|
+
</div>
|
|
91
|
+
<p class="tile__body" style="margin-top: var(--space-sm);">
|
|
92
|
+
Audit fee included. No per-seat. No annual lock. Cancel any month.
|
|
93
|
+
</p>
|
|
94
|
+
</article>
|
|
95
|
+
|
|
96
|
+
<article class="tile tile--testimonial">
|
|
97
|
+
<p class="tile__label">From a customer</p>
|
|
98
|
+
<p class="tile__quote">
|
|
99
|
+
"We told the auditor 'use Foundry, the evidence is in there.' She did. The audit closed
|
|
100
|
+
on schedule. That has never happened to me before."
|
|
101
|
+
</p>
|
|
102
|
+
<p class="tile__attr">— <strong>Sara V.</strong>, founder, 9-person fintech</p>
|
|
103
|
+
</article>
|
|
104
|
+
|
|
105
|
+
<article class="tile tile--features">
|
|
106
|
+
<p class="tile__label">What's automated</p>
|
|
107
|
+
<h3 class="tile__head">Eighty-six controls, evidenced on a schedule.</h3>
|
|
108
|
+
<ul class="feat-list">
|
|
109
|
+
<li><span class="num">01.</span><span>Access reviews quarterly. Slack-prompted. One-click sign-off.</span></li>
|
|
110
|
+
<li><span class="num">02.</span><span>Vulnerability scans on every deploy. Severity-routed.</span></li>
|
|
111
|
+
<li><span class="num">03.</span><span>Vendor security review with one-page risk memo per vendor.</span></li>
|
|
112
|
+
<li><span class="num">04.</span><span>Incident response playbook with on-call rotation prefilled.</span></li>
|
|
113
|
+
<li><span class="num">05.</span><span>Code review evidence pulled from GitHub, GitLab, Bitbucket.</span></li>
|
|
114
|
+
<li><span class="num">06.</span><span>Backups verified weekly. Restore tested monthly.</span></li>
|
|
115
|
+
</ul>
|
|
116
|
+
</article>
|
|
117
|
+
|
|
118
|
+
<article class="tile tile--faq">
|
|
119
|
+
<p class="tile__label">FAQ</p>
|
|
120
|
+
<h3 class="tile__head">The eight questions everyone asks first.</h3>
|
|
121
|
+
<ul class="faq-list">
|
|
122
|
+
<li><a href="#">Do we need to switch auditor?</a></li>
|
|
123
|
+
<li><a href="#">How long does Type I take?</a></li>
|
|
124
|
+
<li><a href="#">Can we add ISO 27001 later?</a></li>
|
|
125
|
+
<li><a href="#">Does Foundry produce the policies?</a></li>
|
|
126
|
+
<li><a href="#">What about HIPAA, GDPR?</a></li>
|
|
127
|
+
<li><a href="#">Do you offer a trust portal?</a></li>
|
|
128
|
+
</ul>
|
|
129
|
+
</article>
|
|
130
|
+
</section>
|
|
131
|
+
|
|
132
|
+
<section class="cta-strip">
|
|
133
|
+
<h2 class="cta-strip__head">Start the trial. <em>Cancel before the first invoice if it's not ready.</em></h2>
|
|
134
|
+
<div class="cta-strip__cta">
|
|
135
|
+
<a class="btn btn--primary" href="#">Open an account</a>
|
|
136
|
+
<a class="btn" href="#">Book a demo</a>
|
|
137
|
+
</div>
|
|
138
|
+
</section>
|
|
139
|
+
|
|
140
|
+
<footer class="colophon">
|
|
141
|
+
<span>Foundry · SOC 2 Type II · ISO 27001 · GDPR (DPA available on request)</span>
|
|
142
|
+
<span><a href="#">trust report</a> · <a href="#">docs</a> · <a href="#">status</a> · <a href="#">contact</a></span>
|
|
143
|
+
</footer>
|
|
144
|
+
</main>
|
|
145
|
+
</body>
|
|
146
|
+
</html>
|