From 78232a0e57f0333484a55c088e3fe99e4d57a632 Mon Sep 17 00:00:00 2001 From: Peter Date: Wed, 27 May 2026 10:58:56 +0200 Subject: [PATCH] Prototype alt redesign: FAQ debunks, 3-tier pricing, engagement path MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Alternative branch (not for merge yet) for stakeholder review against main. - Add 9-question FAQ on Lighthouse page that debunks adoption objections (data volume, IT blocking, maturity, management buy-in, etc.) including honest "not for you" entry - Restructure Lighthouse pricing to 3 tiers reflecting 2026-05-22 decision: Community (free) / Self-Service (CHF 2,000) / Enterprise (CHF 10,000), with pre-launch bridge notice for existing CHF 999 customers - Replace flat services menu with 3-tier engagement path (Assess → Implement → Transform), inspired by nwave.ai. Full training catalogue retained below. - Apple-style polish pass: larger display typography, restrained colour, full-bleed sections, scroll-driven reveals via useScrollReveal hook - Fix pre-existing nested bug in feature comparison table; rebuild table as data-driven 4-column comparison - Update JSON-LD structured data on Index + Lighthouse pages to reflect the new tiering --- src/components/EngagementPath.tsx | 189 ++++++ src/components/ExpertiseAndServices.tsx | 165 +----- src/components/FAQSection.tsx | 86 +-- src/components/Hero.tsx | 88 +-- src/components/HowItWorks.tsx | 81 ++- src/components/Navigation.tsx | 3 +- src/hooks/useScrollReveal.ts | 34 ++ src/pages/Index.tsx | 30 +- src/pages/Lighthouse.tsx | 756 ++++++++++-------------- 9 files changed, 734 insertions(+), 698 deletions(-) create mode 100644 src/components/EngagementPath.tsx create mode 100644 src/hooks/useScrollReveal.ts diff --git a/src/components/EngagementPath.tsx b/src/components/EngagementPath.tsx new file mode 100644 index 0000000..d7abba7 --- /dev/null +++ b/src/components/EngagementPath.tsx @@ -0,0 +1,189 @@ +import { ArrowRight, Compass, Wrench, TrendingUp } from "lucide-react"; +import { useScrollReveal } from "@/hooks/useScrollReveal"; + +type Tier = { + id: string; + label: string; + icon: typeof Compass; + duration: string; + headline: string; + description: string; + highlights: string[]; + price: string; + cta: { label: string; href: string }; + recommended?: boolean; +}; + +const TIERS: Tier[] = [ + { + id: "assess", + label: "Assess", + icon: Compass, + duration: "Half-day → 1 week", + headline: "See where you stand today.", + description: + "Start with your real data, not generic playbooks. A focused diagnostic that surfaces the constraints in your flow and the one or two things worth changing first.", + highlights: [ + "Flow Health Check — fast report on team or portfolio health", + "Flow Clarity Assessment — deep analysis with prioritised recommendations", + "Built on your historical data, not interviews and opinions", + ], + price: "From CHF 200", + cta: { label: "Get your assessment", href: "mailto:contact@letpeople.work?subject=Flow%20Health%20Check" }, + }, + { + id: "implement", + label: "Implement", + icon: Wrench, + duration: "1–2 weeks", + headline: "Run the pilot. Get the first forecast.", + description: + "We work with your team on your real data — set up Lighthouse, configure flow metrics, run probabilistic forecasts your team can defend. You walk away with a working pilot, not slides.", + highlights: [ + "Bring-Your-Own-Data Workshop with your actual delivery history", + "Lighthouse configured to your workflow and tracker", + "Your team knows how to maintain and extend it", + ], + price: "CHF 3,500", + cta: { label: "Plan your pilot", href: "mailto:contact@letpeople.work?subject=BYOD%20Workshop%20%2B%20Lighthouse%20Pilot" }, + recommended: true, + }, + { + id: "transform", + label: "Transform", + icon: TrendingUp, + duration: "1 quarter +", + headline: "Roll it out. Make it stick.", + description: + "Assessment plus implementation plus the year of Lighthouse Premium it takes to embed the change. We pair with you across the quarter — from first forecast to predictable cadence.", + highlights: [ + "Flow Clarity Assessment + BYOD Workshop bundled", + "Annual Lighthouse Premium license included", + "Designed for portfolios — multiple teams, one coherent view", + ], + price: "From CHF 6,000", + cta: { label: "Design your rollout", href: "mailto:contact@letpeople.work?subject=Flow%20Transformation%20Package" }, + }, +]; + +function TierCard({ tier, index }: { tier: Tier; index: number }) { + const { ref, revealed } = useScrollReveal(); + const Icon = tier.icon; + + return ( +
+ {tier.recommended && ( + + Recommended + + )} + +
+
+ +
+
+
+ {tier.label} +
+
+ {tier.duration} +
+
+
+ +

+ {tier.headline} +

+ +

+ {tier.description} +

+ +
    + {tier.highlights.map((h, i) => ( +
  • + · + {h} +
  • + ))} +
+ +
+
+ {tier.price} +
+ + {tier.cta.label} + + +
+
+ ); +} + +export default function EngagementPath() { + const { ref, revealed } = useScrollReveal(); + + return ( +
+
+
+ + How we work with you + + {/* TODO(peter): replace headline with final wording — 3-5 candidates to draft */} +

+ Three ways to work with us. +
+ All grounded in your real flow. +

+

+ From a half-day check-in to a quarter-long transformation — every path starts with your data, not our slides. +

+
+ +
+ {TIERS.map((tier, i) => ( + + ))} +
+ +

+ Want the full catalogue of certifications, workshops, and consulting?{" "} + + See every offering below + + . +

+
+
+ ); +} diff --git a/src/components/ExpertiseAndServices.tsx b/src/components/ExpertiseAndServices.tsx index 746bb84..8cb80a5 100644 --- a/src/components/ExpertiseAndServices.tsx +++ b/src/components/ExpertiseAndServices.tsx @@ -1,7 +1,8 @@ import { useState } from "react"; -import { ChevronDown, MessageSquare, GraduationCap, Zap, Search as SearchIcon, CheckCircle2 } from "lucide-react"; +import { ChevronDown, MessageSquare, GraduationCap, Zap, Search as SearchIcon } from "lucide-react"; import PeterImage from '../assets/Peter.png'; import BenjiImage from '../assets/Benji.png'; +import EngagementPath from './EngagementPath'; // ─── DATA ──────────────────────────────────────────────────────────────────── @@ -141,32 +142,6 @@ const CATEGORIES: Record = { }, }; -const PACKAGE = { - name: "Complete Flow Transformation Package", - subtitle: "End-to-End: Assessment + Implementation + Sustaining Capability", - description: "The complete journey from understanding your delivery system's current state to implementing a working solution that provides ongoing visibility. This package combines diagnostic assessment with hands-on implementation and sustained capability through Lighthouse Premium.", - savings: "You get the strategic insight of the Flow Clarity Assessment combined with the practical implementation of the BYOD Workshop, plus the ongoing capability to maintain visibility into your delivery system. This is 25% less than purchasing separately, the most comprehensive and cost-effective way to transform your delivery predictability.", - scope: [ - "Two-phase engagement: Assessment followed by Implementation", - "Remote or on-site delivery options", - "Analysis of your historical data (3–6 months)", - "Private 1-day implementation workshop with your team", - "Uses your actual business data and workflows", - ], - deliverables: [ - { title: "Complete diagnostic report", detail: "Flow constraints, WIP patterns, aging trends, and predictability indicators from your historical data" }, - { title: "Lighthouse Premium configured to your workflows", detail: "Custom configuration matching your team structures and processes" }, - { title: "Your historical data integrated and validated", detail: "Real data from your systems, cleaned and ready for ongoing analysis" }, - { title: "Immediate visibility into flow metrics", detail: "Answer the questions you're constantly being asked with live data" }, - { title: "A production-ready system your teams can use immediately", detail: "Walk away with both understanding and capability to sustain it" }, - { title: "60-minute diagnostic debrief + full-day implementation workshop", detail: "Comprehensive engagement from assessment to working solution" }, - ], - priceOnsite: "CHF 7,000", - priceRemote: "CHF 6,000", - includes: "Flow Clarity Assessment + BYOD Workshop + 1 Annual Lighthouse Premium License (Save 25%)", -}; - - // ─── COMPONENTS ────────────────────────────────────────────────────────────── function CategoryAccordion({ @@ -302,29 +277,20 @@ export default function ExpertiseAndServices() { return (
- {/* ── Section Header ── */} -
- - How we help - -

- Your team shouldn't have to guess. -
- We replace gut feel with flow data and help you identify improvements you can actually measure. -

-

- We bring both the tool and the expertise to make it work — from official certifications to deep diagnostic assessments. -

-
+ {/* ── Quick-start: 3-tier engagement path ── */} + - {/* ── Full Catalogue ── */} -
+ {/* ── Full Catalogue (Depth view) ── */} +
-

- Where to Start + + The full catalogue + +

+ Workshops, certifications, consulting.

-

- Every engagement delivered by two practitioners, two perspectives, one coherent outcome. +

+ Every engagement delivered by two practitioners. Two perspectives, one coherent outcome.

@@ -350,111 +316,6 @@ export default function ExpertiseAndServices() {
- {/* ── Divider ── */} -
-
-
- - {/* ── Featured Package ── */} -
-
- {/* Subtle glow */} -
- -
- {/* Badges */} -
- - Best Value - - - Save 25% - - - Popular - -
- -

- {PACKAGE.name} -

-
- {PACKAGE.subtitle} -
- -

- Six months from now, your team walks into any steering committee meeting with a forecast range built from real data, not gut feeling. And you'll know which parts of your delivery system to fix to make the next one even better. This package is how you get there. -

-

- {PACKAGE.savings} -

- - {/* Scope & Deliverables */} -
-
-

- Scope -

-
- {PACKAGE.scope.map((item, i) => ( -
- - {item} -
- ))} -
-
- -
-

- What You Receive -

-
- {PACKAGE.deliverables.map((item, i) => ( -
- -
-
{item.title}
-
{item.detail}
-
-
- ))} -
-
-
- - {/* Pricing + CTA */} -
-
- Investment -
-
-
-
-
On-Site
-
{PACKAGE.priceOnsite}
-
-
-
Remote
-
{PACKAGE.priceRemote}
-
-
- - - Schedule Workshop → - -
-
- {PACKAGE.includes} -
-
-
-
-
- {/* ── Custom / Tailored ── */}
diff --git a/src/components/FAQSection.tsx b/src/components/FAQSection.tsx index b6bba98..f36267c 100644 --- a/src/components/FAQSection.tsx +++ b/src/components/FAQSection.tsx @@ -4,44 +4,49 @@ import { Helmet } from "react-helmet-async"; const faqs = [ { - question: "What is the difference between Lighthouse Community and Premium?", + question: "I need lots of data first.", answer: - "Community is free, open source, and includes all core flow metrics and forecasting features — cycle time, throughput, WIP, work item age, and Monte Carlo simulations. Premium (CHF 999/year) adds unlimited teams and projects, priority support, and advanced features including an AI integration via MCP. Most teams start with Community and upgrade when they need to scale.", + "You need around ten finished work items to get a first useful forecast. Most teams already have that from a fortnight of throughput. You don't need a year of history — you need what you've already done.", }, { - question: "Does Lighthouse work with Jira, Azure DevOps, and Linear?", + question: "Our tracker is messy. I don't have clean data.", answer: - "Yes. Lighthouse has native integrations with all three. No CSV exports, no parallel spreadsheets — it reads directly from the tools your teams already work in. Setup takes under 10 minutes per integration.", + "Messy is normal. Lighthouse pulls from Jira, Azure DevOps, Linear, or CSV — and the math is robust to noisy data. The signal you need (when items started, when they finished) survives even in trackers that have been through three reorgs.", }, { - question: "How long does it take to get started with Lighthouse?", + question: "I can't run this in my org — IT will block it.", answer: - "Under 10 minutes from download to first forecast. Connect your Jira, Azure DevOps, or Linear account, and Lighthouse pulls your historical data automatically. The installation video on this page shows the full process.", + "It runs on your laptop. Docker container or native .NET — no external network calls by default. Your Jira / ADO / Linear data never leaves your machine. You don't need to file a ticket to try it for a fortnight.", }, { - question: "What is probabilistic forecasting and why is it better than estimates?", + question: "My team's not mature enough for this.", answer: - "Probabilistic forecasting uses your team's actual delivery history — how many items you complete per week — to simulate thousands of possible futures and produce a confidence range (for example, '85% chance of delivery by October 14'). Unlike estimates, it is based on what your team actually does, not what you think you can do. The range is honest because it reflects real variability in your system.", + "Probabilistic forecasting works on whatever flow you have today. Maturity is the output, not the prerequisite. The reason to start now is precisely because the forecast surfaces what to improve — waiting until you're 'ready' is waiting forever.", }, { - question: "How is flow metrics different from velocity?", + question: "I need management buy-in first.", answer: - "Velocity measures how much work a team planned to complete in a sprint — in points, which vary by team and sprint. Flow metrics measure what actually happens: how long work takes (cycle time), how much is in progress at once (WIP), and how reliably work flows through the system. Flow metrics are based on elapsed time, not points, which makes them more stable, more honest, and far more useful for forecasting.", + "You don't — to try it. You might — to roll it out. Try it solo, produce a forecast you couldn't have produced before, then decide whether to broadcast it. The cheapest demo of value is one you ran on your own laptop.", }, { - question: "Do you work with teams using Scrum or SAFe?", + question: "I'm just an IC / Scrum Master / coach. This isn't my call.", answer: - "Yes. Flow metrics and probabilistic forecasting work regardless of your process framework. We have worked with teams using Kanban, Scrum, SAFe, and hybrid approaches. The data-driven approach works wherever work flows through a system — the framework is just context.", + "Most of Lighthouse's early users are exactly that — ICs, Scrum Masters, and coaches running it for their own team. The 'I need permission to introduce a tool' framing is your story, not your manager's. The tool installs on your laptop; nobody else needs to know until you have something worth showing.", }, { - question: "Can we book a single workshop, or do we need a full engagement?", + question: "It looks complicated.", answer: - "Single workshops start at CHF 1,000 and run 2 to 4 hours. There is no minimum commitment. Many teams start with one session — Introduction to Probabilistic Forecasting or Flow Metrics and Little's Law — to see what resonates before going deeper. The Complete Flow Transformation Package is there for teams that want the full journey in one go.", + "First useful output is about thirty minutes from download. Pre-loaded sample data lets you see the shape before connecting anything. If you've ever opened Excel and made a pivot table, you're already past the hardest part.", }, { - question: "Is our data safe? Does anything leave our network?", + question: "I tried something like this before and it didn't stick.", answer: - "Lighthouse runs entirely on your infrastructure, either as a Docker container or as a native desktop app. Nothing is sent to the cloud. Your Jira, Azure DevOps, or Linear data never leaves your network. Lighthouse uses SQLite by default and stores all data locally.", + "What was it — Actionable Agile, Nave, Jira's native forecasting? The specific debunk varies, but Lighthouse's shape (self-hosted, open source, free tier) removes most of the failure modes that kill these tools in real orgs: IT blocks the SaaS, budget gets cut, the champion leaves. None of those land the same way when the tool is free and runs on your laptop.", + }, + { + question: "Is this even for me?", + answer: + "We'd rather you not download Lighthouse than download it and bounce. It's probably not for you if: you're a single team with no portfolio question (a cycle-time chart in Jira will do); your project is one-shot and nearly done (forecasting can't help retroactively); or you work in a hard fixed-deadline culture where commitment is non-negotiable (the math is irrelevant if 'we'll work weekends to hit the date' is the answer). If any of these is you — save the download.", }, ]; @@ -69,23 +74,17 @@ const FAQSection = () => { -
+
-
- - FAQ +
+ + The honest answers -

- Common questions +

+ What's stopping you?

-

- Anything not covered here? Email us at{" "} - - contact@letpeople.work - +

+ We've heard every reason not to try Lighthouse. Here are the ones that come up most — and what we actually think about them.

@@ -93,9 +92,9 @@ const FAQSection = () => { {faqs.map((faq, i) => (
@@ -104,28 +103,39 @@ const FAQSection = () => { className="w-full flex items-center justify-between px-6 py-5 text-left gap-4" aria-expanded={openIndex === i} > - - {faq.question} + + "{faq.question}"
-

+

{faq.answer}

))}
+ +

+ Something else on your mind? Email us at{" "} + + contact@letpeople.work + + . +

diff --git a/src/components/Hero.tsx b/src/components/Hero.tsx index 2a8cf04..880f487 100644 --- a/src/components/Hero.tsx +++ b/src/components/Hero.tsx @@ -1,6 +1,7 @@ import { ArrowRight, Play } from "lucide-react"; import { Button } from "@/components/ui/button"; import heroFlow from "@/assets/hero-flow.jpg"; +import { useScrollReveal } from "@/hooks/useScrollReveal"; const Hero = () => { const handleGetLighthouse = () => { @@ -17,72 +18,89 @@ const Hero = () => { } }; + const { ref: statsRef, revealed: statsRevealed } = useScrollReveal(); + return ( -
- {/* Background Image */} +
+ {/* Background Image — very subtle */}
- Flow visualization background showing agile workflow -
+
{/* Content */} -
+
-

- Stop defending estimates.{" "} - + + Flow metrics, finally usable + + +

+ Stop defending estimates. +
+ Start forecasting - - {" "}with confidence. + {" "} + with confidence.

-

- You're being asked when it'll be done. Right now, your honest answer is a guess. Lighthouse shows you why delivery is slow and when it'll finish, so you can fix the system and stop defending the date. +

+ You're being asked when it'll be done. Right now, your honest answer is a guess. Lighthouse shows you why delivery is slow and when it'll finish — so you can fix the system and stop defending the date.

-
- -
- {/* Stats */} -

- We've watched capable teams drown in estimate theater. Here's what we built to end it: -

-
-
-
15+
-
Years Experience
-
-
-
500+
-
Professionals Trained
-
-
-
100%
-
Open Source
+ {/* Stats with scroll reveal */} +
+

+ We've watched capable teams drown in estimate theater. Here's what we built to end it. +

+
+ {[ + { value: "15+", label: "Years Experience" }, + { value: "500+", label: "Professionals Trained" }, + { value: "100%", label: "Open Source" }, + ].map((s, i) => ( +
+
{s.value}
+
{s.label}
+
+ ))}
-

); }; -export default Hero; \ No newline at end of file +export default Hero; diff --git a/src/components/HowItWorks.tsx b/src/components/HowItWorks.tsx index b44de59..d82b41d 100644 --- a/src/components/HowItWorks.tsx +++ b/src/components/HowItWorks.tsx @@ -1,59 +1,76 @@ +import { useScrollReveal } from "@/hooks/useScrollReveal"; + const steps = [ { - number: "1", + number: "01", title: "Connect your data", description: - "Lighthouse installs in under 10 minutes and pulls from Jira, Azure DevOps, or Linear. No spreadsheets, no manual exports.", + "Lighthouse installs in under ten minutes and pulls from Jira, Azure DevOps, or Linear. No spreadsheets. No manual exports.", }, { - number: "2", + number: "02", title: "See why delivery is slow", description: - "Cycle time, WIP, throughput, and work item age reveal your actual delivery system, not the idealized version. Spot bottlenecks before the steering committee does.", + "Cycle time, WIP, throughput, and work item age reveal your actual delivery system — not the idealised version. Spot bottlenecks before the steering committee does.", }, { - number: "3", + number: "03", title: "Forecast with data you can defend", description: - "Monte Carlo simulations turn your team's real history into delivery ranges that hold up in stakeholder conversations, and improve as your system does.", + "Monte Carlo simulations turn your team's real history into delivery ranges that hold up in stakeholder conversations — and improve as your system does.", }, ]; +function Step({ step, i }: { step: (typeof steps)[number]; i: number }) { + const { ref, revealed } = useScrollReveal(); + return ( +
+
+ {step.number} +
+

+ {step.title} +

+

+ {step.description} +

+
+ ); +} + const HowItWorks = () => { + const { ref: headRef, revealed: headRevealed } = useScrollReveal(); return ( -
+
-
- +
+ How it works -

- From guessing to knowing —{" "} - - in three steps - +

+ From guessing to knowing. +
+ In three steps.

-

- Most teams use Lighthouse to stop defending estimates. Then they realize they're also delivering faster. +

+ Most teams use Lighthouse to stop defending estimates. Then they realise they're delivering faster too.

-
- {steps.map((step) => ( -
-
- {step.number} -
-

- {step.title} -

-

- {step.description} -

-
+
+ {steps.map((step, i) => ( + ))}
diff --git a/src/components/Navigation.tsx b/src/components/Navigation.tsx index b3a46fe..e7b1a2b 100644 --- a/src/components/Navigation.tsx +++ b/src/components/Navigation.tsx @@ -21,7 +21,8 @@ const Navigation = () => { { name: "Downloads", href: "#downloads" }, { name: "Overview", href: "#lighthouse-overview" }, { name: "Testimonials", href: "#lighthouse-testimonials" }, - { name: "Lighthouse Premium", href: "#lighthouse-premium" }, + { name: "FAQ", href: "#faq" }, + { name: "Pricing", href: "#lighthouse-premium" }, { name: "Get a License", href: "#lighthouse-license" }, { name: "AI Integration", href: "#lighthouse-ai" }, { name: "Pitch Deck (PDF)", href: "#lighthouse-convince" }, diff --git a/src/hooks/useScrollReveal.ts b/src/hooks/useScrollReveal.ts new file mode 100644 index 0000000..c4a2c9f --- /dev/null +++ b/src/hooks/useScrollReveal.ts @@ -0,0 +1,34 @@ +import { useEffect, useRef, useState } from "react"; + +/** + * Reveals an element once it scrolls into view. Returns a ref + a boolean. + * Pair the boolean with Tailwind: `opacity-0 translate-y-6` -> `opacity-100 translate-y-0`. + */ +export function useScrollReveal( + options: IntersectionObserverInit = { threshold: 0.15, rootMargin: "0px 0px -10% 0px" }, +) { + const ref = useRef(null); + const [revealed, setRevealed] = useState(false); + + useEffect(() => { + const el = ref.current; + if (!el) return; + if (typeof IntersectionObserver === "undefined") { + setRevealed(true); + return; + } + const observer = new IntersectionObserver((entries) => { + entries.forEach((entry) => { + if (entry.isIntersecting) { + setRevealed(true); + observer.unobserve(entry.target); + } + }); + }, options); + observer.observe(el); + return () => observer.disconnect(); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + return { ref, revealed }; +} diff --git a/src/pages/Index.tsx b/src/pages/Index.tsx index d62415d..dc902da 100644 --- a/src/pages/Index.tsx +++ b/src/pages/Index.tsx @@ -67,7 +67,7 @@ const Index = () => { "itemOffered": { "@type": "SoftwareApplication", "name": "Lighthouse", - "description": "Open-source flow metrics and forecasting tool. Connects to Jira, Azure DevOps, and Linear. AI integration via MCP. Community and Premium editions.", + "description": "Open-source flow metrics and forecasting tool. Connects to Jira, Azure DevOps, and Linear. AI integration via MCP. Community, Self-Service, and Enterprise editions.", "applicationCategory": "DeveloperApplication", "operatingSystem": "Cross-platform", "offers": [ @@ -76,25 +76,33 @@ const Index = () => { "name": "Lighthouse Community Edition", "price": "0", "priceCurrency": "CHF", - "description": "Free open-source version with core flow metrics and forecasting features" + "description": "Free open-source edition with core flow metrics and forecasting features. Capped to 3 teams and 1 portfolio." }, { "@type": "Offer", - "name": "Lighthouse Premium Edition", - "price": "999", + "name": "Lighthouse Self-Service", + "price": "2000", "priceCurrency": "CHF", "priceSpecification": { "@type": "UnitPriceSpecification", - "price": "999", + "price": "2000", "priceCurrency": "CHF", "unitText": "year" }, - "description": "Premium version with unlimited users and advanced features", - "eligibleQuantity": { - "@type": "QuantitativeValue", - "value": "unlimited", - "unitText": "users" - } + "description": "Annual self-hosted license. Unlimited teams, portfolios, and all paid-tier features. Community Slack support." + }, + { + "@type": "Offer", + "name": "Lighthouse Enterprise", + "price": "10000", + "priceCurrency": "CHF", + "priceSpecification": { + "@type": "UnitPriceSpecification", + "price": "10000", + "priceCurrency": "CHF", + "unitText": "year" + }, + "description": "Annual self-hosted license with prioritised support, named contacts, onboarding calls, and workshop discounts." } ] } diff --git a/src/pages/Lighthouse.tsx b/src/pages/Lighthouse.tsx index d118270..8b0ce7a 100644 --- a/src/pages/Lighthouse.tsx +++ b/src/pages/Lighthouse.tsx @@ -70,6 +70,7 @@ import lighthouseLogo from "@/assets/LighthouseLogo.png"; import { supabase } from "@/integrations/supabase/client"; import { useToast } from "@/components/ui/use-toast"; import LighthouseTestimonials from "@/components/LighthouseTestimonials"; +import FAQSection from "@/components/FAQSection"; import { format } from "date-fns"; import metricsTeam1 from "@/assets/screenshots/Metrics_Team_1.png"; import metricsProject1 from "@/assets/screenshots/Metrics_Project_1.png"; @@ -525,18 +526,26 @@ const Lighthouse = () => { offers: [ { "@type": "Offer", - name: "Community Version", + name: "Community Edition", price: "0", priceCurrency: "CHF", - description: "Free forever community version with core features", + description: "Free forever community edition with core features (capped to 3 teams, 1 portfolio)", }, { "@type": "Offer", - name: "Premium License", - price: "999", + name: "Self-Service License", + price: "2000", priceCurrency: "CHF", description: - "Annual premium license with unlimited teams and advanced features", + "Annual self-hosted license with unlimited teams, portfolios, and all paid-tier features. Community Slack support.", + }, + { + "@type": "Offer", + name: "Enterprise License", + price: "10000", + priceCurrency: "CHF", + description: + "Annual self-hosted license with prioritised support, 24h acknowledgement, 2x60-min onboarding, named contacts, and workshop discounts.", }, ], description: @@ -989,30 +998,129 @@ const Lighthouse = () => {
- {/* Why Premium Section */} -
+ {/* FAQ — assumption-debunking */} + + + {/* Pricing Section — 3 tiers */} +
-
-

- Lighthouse{" "} - - Premium - +
+ + Pricing + +

+ Three editions. +
+ Same product. Different access.

-

- While our Community Version provides all the features you need to - analyze the flow and forecast delivery dates, Premium unlocks - enterprise-grade capabilities that help you scale the usage and - adoption within your organization and thus lead to a scaled - learning. +

+ Lighthouse stays open source and self-hosted across every edition. Paid tiers unlock unlimited usage and choose how much of us you want alongside it.

- {/* Comparison Table */} + {/* Bridge / pre-launch notice */} +
+ New pricing launches August 2026.{" "} + Existing CHF 999 customers get a one-year bridge license at renewal — no surprises. Buying before launch? You stay on the current rate for a year. +
+ + {/* 3-tier card grid */} +
+ {/* Community */} +
+
Community
+
+
Free
+
+
Forever. Open source. Self-hosted.
+

+ Everything you need to forecast and see your flow — up to a few teams. +

+
    +
  • All core flow metrics & Monte Carlo forecasts
  • +
  • Jira, Azure DevOps, Linear, CSV
  • +
  • AI / MCP integration
  • +
  • Up to 3 teams · 1 portfolio · 1 delivery
  • +
  • Community Slack support
  • +
+ + Download free + +
+ + {/* Self-Service — Recommended */} +
+ + Most popular + +
Self-Service
+
+
CHF 2,000
+
/ year
+
+
Annual license. Self-hosted.
+

+ The full product, your way. Run it, configure it, scale it — with the community at your back. +

+
    +
  • Everything in Community, no caps
  • +
  • Unlimited teams, portfolios, deliveries
  • +
  • Auth & RBAC, rule-based deliveries, data sync mappings
  • +
  • Community Slack — alongside our team
  • +
  • + Feature requests via ideas.letpeople.work +
  • +
  • Best-effort help from us when we have capacity
  • +
+ + Get Self-Service + +
+ + {/* Enterprise */} +
+
Enterprise
+
+
CHF 10,000
+
/ year
+
+
For teams that want us prioritised.
+

+ Everything in Self-Service, plus direct access to the people who build the tool — when you need it, fast. +

+
    +
  • Everything in Self-Service
  • +
  • Prioritised support — your questions and feature requests jump the queue
  • +
  • 24h acknowledgement on async requests
  • +
  • 2 × 60-min onboarding calls in your first 90 days
  • +
  • Named contacts — Peter (flow/coaching) & Benjamin (technical)
  • +
  • 10% off any LetPeopleWork workshop or training
  • +
  • Data Processing Agreement (you self-host — minimal)
  • +
+

Capacity capped at 5–8 customers so we can actually deliver on this.

+ + Talk to us + +
+
+ + {/* Full feature comparison table */}
-

- Community vs Premium Comparison +

+ Feature comparison

+

+ Tiers split on access and support, not features. Paid tiers share the same product. +

@@ -1022,396 +1130,151 @@ const Lighthouse = () => { Feature - + - {/* Base Functionality */} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {/* Constraints in Community Version */} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {/* Premium Features */} - - - - - - - - - - - - - - - - - - - - - - - - - - {/* Data Sync Mappings - Premium Only */} - - - - - + {(() => { + type Cell = boolean | string | { label: string; tooltip: string }; + type Row = { feature: Cell; community: Cell; self: Cell; enterprise: Cell }; + type Group = { title: string; rows: Row[] }; + + const renderFeature = (cell: Cell) => { + if (typeof cell === "object" && cell !== null && "tooltip" in cell) { + return ( +
+ {cell.label} + + + + + + +

{cell.tooltip}

+
+
+
+
+ ); + } + return cell as string; + }; + + const renderValue = (cell: Cell, accent = false) => { + if (typeof cell === "boolean") { + return cell + ? + : ; + } + return {cell as string}; + }; + + const groups: Group[] = [ + { + title: "Base Functionality", + rows: [ + { feature: "Flow Metrics for Teams", community: true, self: true, enterprise: true }, + { feature: "Flow Metrics for Projects", community: true, self: true, enterprise: true }, + { feature: "Manual Forecasts for Teams", community: true, self: true, enterprise: true }, + { feature: "Continuous Forecasts for Projects", community: true, self: true, enterprise: true }, + { feature: "100% Open Source (MIT License)", community: true, self: true, enterprise: true }, + { feature: "Connection to Jira, Azure DevOps & Linear", community: true, self: true, enterprise: true }, + { + feature: { label: "AI & LLM Integration", tooltip: "Connect Lighthouse to Claude, ChatGPT, or any MCP-compatible AI assistant. Query metrics, run forecasts, and explore delivery data through natural language — no dashboard required." }, + community: true, self: true, enterprise: true, + }, + { + feature: { label: "CLI & Automation", tooltip: "Automate metrics collection and forecasting via the lh CLI or the MCP server. Integrate Lighthouse data into scripts, CI/CD pipelines, and custom tooling." }, + community: true, self: true, enterprise: true, + }, + ], + }, + { + title: "Usage Limits", + rows: [ + { feature: "Number of Teams", community: "Max 3", self: "Unlimited", enterprise: "Unlimited" }, + { feature: "Number of Portfolios", community: "Max 1", self: "Unlimited", enterprise: "Unlimited" }, + { feature: "CSV Support", community: "Max 1 Team", self: "Unlimited", enterprise: "Unlimited" }, + { feature: "Demo Data", community: "Basic Scenarios", self: "Advanced Scenarios", enterprise: "Advanced Scenarios" }, + { feature: "Deliveries", community: "1 Delivery", self: "Unlimited", enterprise: "Unlimited" }, + { + feature: { label: "Additional Fields", tooltip: "Add custom fields to capture additional metadata specific to your workflow and requirements." }, + community: "1 Field", self: "Unlimited", enterprise: "Unlimited", + }, + ], + }, + { + title: "Paid-tier Features", + rows: [ + { + feature: { label: "Authentication & RBAC", tooltip: "Secure your Lighthouse instance with any OIDC-compatible identity provider (Microsoft Entra, Google, Keycloak, Auth0, etc.) and control access with Role Based Access Control." }, + community: false, self: true, enterprise: true, + }, + { + feature: { label: "Rule-Based Deliveries", tooltip: "Define rules to automatically include your Features based on criteria like labels, fixVersion, or custom fields, ensuring your deliveries are always up-to-date without manual updating." }, + community: false, self: true, enterprise: true, + }, + { + feature: { label: "Blackout Days", tooltip: "Define days which should not be counted in the Throughput for calculating forecasts, for example bank holidays." }, + community: false, self: true, enterprise: true, + }, + { + feature: { label: "Data Export & Sharing", tooltip: "Export flow metrics data to CSV or clipboard for sharing via email or custom analysis." }, + community: false, self: true, enterprise: true, + }, + { + feature: { label: "Data Sync Mappings", tooltip: "Write Metrics and Forecasts back to Jira and Azure DevOps and store them in your system." }, + community: false, self: true, enterprise: true, + }, + ], + }, + { + title: "Support & Onboarding", + rows: [ + { feature: "Community Slack", community: true, self: true, enterprise: true }, + { feature: "Feature requests (ideas.letpeople.work)", community: true, self: true, enterprise: true }, + { feature: "Best-effort help from the team", community: false, self: true, enterprise: true }, + { feature: "Prioritised support queue", community: false, self: false, enterprise: true }, + { feature: "24h acknowledgement (async)", community: false, self: false, enterprise: true }, + { feature: "Onboarding calls (2×60 min in first 90 days)", community: false, self: false, enterprise: true }, + { feature: "Named contacts (Peter & Benjamin)", community: false, self: false, enterprise: true }, + { feature: "10% workshop / training discount", community: false, self: false, enterprise: true }, + ], + }, + ]; + + return groups.flatMap((group, gi) => [ + + + , + ...group.rows.map((row, ri) => ( + + + + + + + )), + ]); + })()}
- Community Version + Community - Premium Version + + Self-Service + + Enterprise
- Base Functionality -
- Flow Metrics for Teams - - - - -
- Flow Metrics for Projects - - - - -
- Manual Forecasts for Teams - - - - -
- Continuous Forecasts for Projects - - - - -
- 100% Open Source (MIT License) - - - - -
- Connection to Jira and Azure DevOps - - - - -
-
- AI & LLM Integration - - - - - - -

- Connect Lighthouse to Claude, ChatGPT, or any - MCP-compatible AI assistant. Query metrics, run - forecasts, and explore delivery data through - natural language — no dashboard required. -

-
-
-
-
-
- - - -
-
- CLI & Automation - - - - - - -

- Automate metrics collection and forecasting via - the lh CLI or the MCP server. - Integrate Lighthouse data into scripts, CI/CD - pipelines, and custom tooling. -

-
-
-
-
-
- - - -
- Usage Limits -
- Number of Teams - - Max 3 - - Unlimited -
- Number of Portfolios - - Max 1 - - Unlimited -
- CSV Support - - Max 1 Team - - Unlimited Teams and Portfolios -
- Demo Data - - Basic Scenarios - - Advanced Scenarios -
- Deliveries - - 1 Delivery - - Unlimited -
-
- Additional Fields - - - - - - -

- Add custom fields to capture additional metadata - specific to your workflow and requirements. -

-
-
-
-
-
- 1 Additional Field - - Unlimited -
- Premium-Only Features -
-
- Authentication & RBAC - - - - - - -

- Secure your Lighthouse instance with any - OIDC-compatible identity provider (Microsoft - Entra, Google, Keycloak, Auth0, etc.) and - control access with Role Based Access Control. -

-
-
-
-
-
- - - -
-
- Rule-Based Deliveries - - - - - - -

- Define rules to automatically include your - Features based on criteria like labels, - fixVersion, or custom fields, ensuring your - deliveries are always up-to-date without manual - updating. -

-
-
-
-
-
- - - -
-
- Blackout Days - - - - - - -

- Define days which should not be counted in the - Throughput for calculating forecasts, for - example bank holidays. -

-
-
-
-
-
- - - -
-
- Data Export & Sharing - - - - - - -

- Export flow metrics data to CSV or clipboard for - sharing via email or custom analysis -

-
-
-
-
-
- - - -
-
- Data Sync Mappings - - - - - - -

- Write Metrics and Forecasts back to Jira and - Azure DevOps and store them in your system. -

-
-
-
-
-
- - - -
+ {group.title} +
+ {renderFeature(row.feature)} + {renderValue(row.community)}{renderValue(row.self, true)}{renderValue(row.enterprise, true)}

- Note: New - premium features may be introduced as premium-only for the first - few months before being made available to the Community Version, - ensuring premium users get early access to cutting-edge - capabilities. + Note: New paid-tier features may be introduced for Self-Service and Enterprise first, before being made available in the Community edition. Community customers stay on the same feature line — they just get there a release or two later.

@@ -1419,18 +1282,19 @@ const Lighthouse = () => {

{/* License Purchase Section */} -
+
-

- Get Your{" "} - - Premium License - + + Get a license + +

+ Self-Service today. +
+ Enterprise when you're ready.

-

- Purchase your Lighthouse Premium license and unlock the full - potential of your organization. +

+ Pick the path that fits. You can move up later — just write to us.

@@ -1442,34 +1306,32 @@ const Lighthouse = () => {
-

- Lighthouse Premium License +

+ Self-Service License

-

- Valid for one year from the date of purchase +

Annual · Self-hosted

+

+ The full Lighthouse product, no caps, all paid-tier features. Community Slack support, feature requests via ideas.letpeople.work, and best-effort help from us when we have capacity.

-

- Please contact us at licensing@letpeople.work if you: -

+

Get in touch at licensing@letpeople.work if you:

    -
  • • Are interested in a trial license
  • -
  • - • Want to explore a pricing reduction or a custom - enterprise agreements -
  • -
  • • Need a custom invoice
  • -
  • • Have any other license related question
  • +
  • • Want a trial license
  • +
  • • Need a custom invoice or PO process
  • +
  • • Want to talk Enterprise terms instead
-
- CHF 999{" "} - - .- - +
+
+ CHF 2,000 +
+
/ year
+

+ New pricing in effect from launch (August 2026). Existing CHF 999 customers — see the bridge offer above. Pre-launch buyers stay on the lower rate for a year. +

{/* License Details Collapsible */} @@ -1672,6 +1534,42 @@ const Lighthouse = () => {
+ + {/* Enterprise enquiry card */} +
+
+
+
+ + Enterprise + +

+ Want us prioritised? +

+

+ Enterprise gets you the same product as Self-Service plus direct access to Peter and Benjamin — prioritised queue, 24h ack, onboarding calls, and a 10% workshop discount. +

+

+ Capped at 5–8 customers so we can actually deliver on it. +

+
+
+
+
CHF 10,000
+
/ year
+
+ + Talk to us + +

+ Reply within one working day. We'll set up a short call to scope the agreement and onboarding. +

+
+
+