From 3d5ab8f32c9ec4b68ab53160ff7086774724976d Mon Sep 17 00:00:00 2001 From: cesnimda Date: Sun, 5 Jul 2026 20:45:20 +0200 Subject: [PATCH] feat(ui): add pricing section to landing page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three honest tiers (Free / Pro £9-mo / Bring-your-own-key £3-mo) billed monthly or yearly — never by the week (the anti-Teal positioning from docs/remaster/RESEARCH_COMPETITORS.md), with a "Most popular" highlight and the assistive-not-autonomous trust note. Prices are indicative placeholders for the SaaS direction. Verified live: pricing section + all three tiers render at "/". Co-Authored-By: Claude Opus 4.8 --- job-tracker-ui/src/pages/LandingPage.tsx | 63 ++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/job-tracker-ui/src/pages/LandingPage.tsx b/job-tracker-ui/src/pages/LandingPage.tsx index 64050f9..ce326c4 100644 --- a/job-tracker-ui/src/pages/LandingPage.tsx +++ b/job-tracker-ui/src/pages/LandingPage.tsx @@ -34,6 +34,12 @@ const STEPS: { n: number; title: string; body: string }[] = [ { n: 6, title: "Analyze", body: "See what's working — response rate, funnel and time-in-stage — and focus your effort." }, ]; +const PRICING: { name: string; price: string; cadence: string; highlight: boolean; features: string[]; cta: string }[] = [ + { name: "Free", price: "£0", cadence: "forever", highlight: false, cta: "Get started", features: ["Unlimited job tracking & pipeline", "One-click capture (bookmarklet + PWA)", "Deterministic CV↔job match score", "3 AI CV tailors / month"] }, + { name: "Pro", price: "£9", cadence: "/ month · billed monthly or yearly", highlight: true, cta: "Start Pro", features: ["Everything in Free", "Unlimited AI CV & cover-letter tailoring", "CV versions + factuality guardrail", "Gmail correspondence CRM", "Analytics drill-downs"] }, + { name: "Bring your own key", price: "£3", cadence: "/ month + your AI key", highlight: false, cta: "Get started", features: ["Everything in Pro", "Use your own Gemini / Groq key", "Unlimited AI at provider cost", "Privacy-first & self-host friendly"] }, +]; + export default function LandingPage() { const navigate = useNavigate(); const [checking, setChecking] = useState(true); @@ -147,6 +153,63 @@ export default function LandingPage() { + {/* Pricing */} + + + PRICING + Honest, simple pricing + + Billed monthly or yearly — never by the week. Cancel anytime. + + + + {PRICING.map((tier) => ( + + {tier.highlight && ( + + Most popular + + )} + {tier.name} + + {tier.price} + {tier.cadence} + + + {tier.features.map((f) => ( + + + {f} + + ))} + + + + ))} + + + Prices indicative — assistive, never autonomous: you always review and send. No auto-apply spam. + + + {/* CTA */}