From 0dd89a751b234062b9076cbee07e177263ea5262 Mon Sep 17 00:00:00 2001 From: Sean Date: Sun, 28 Dec 2025 17:37:02 -0500 Subject: [PATCH] homepage tweaks --- app/page.tsx | 226 +++++++++++++++++++++++++++++-------- package-lock.json | 19 ++++ package.json | 1 + public/builder-preview.png | Bin 0 -> 337429 bytes 4 files changed, 201 insertions(+), 45 deletions(-) create mode 100644 public/builder-preview.png diff --git a/app/page.tsx b/app/page.tsx index 77df1d2..94eb372 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -3,6 +3,14 @@ import { FormEvent, useState } from "react"; import Image from "next/image"; import Link from "next/link"; +import { + WrenchScrewdriverIcon, + ShieldExclamationIcon, + CurrencyDollarIcon, + BookmarkSquareIcon, + BuildingStorefrontIcon, + ChatBubbleLeftRightIcon, +} from "@heroicons/react/20/solid"; export default function HomePage() { const [email, setEmail] = useState(""); @@ -39,7 +47,12 @@ export default function HomePage() { const res = await fetch("/api/beta-signup", { method: "POST", headers: { "Content-Type": "application/json" }, - body: JSON.stringify({ email, useCase, acceptedTos: accepted, tosVersion: TOS_VERSION }), + body: JSON.stringify({ + email, + useCase, + acceptedTos: accepted, + tosVersion: TOS_VERSION, + }), }); if (!res.ok) { @@ -60,6 +73,43 @@ export default function HomePage() { } } + const features = [ + { + name: "Guided part roles", + description: "Pick parts by role so you’re not guessing what fits where.", + icon: WrenchScrewdriverIcon, + }, + { + name: "Basic compatibility warnings", + description: + "Early guardrails to catch obvious mismatches before you buy.", + icon: ShieldExclamationIcon, + }, + { + name: "Live pricing totals", + description: + "See the running total as you build, with real retailer listings.", + icon: CurrencyDollarIcon, + }, + { + name: "Save builds", + description: "Save a build to your account so you can finish it later.", + icon: BookmarkSquareIcon, + }, + { + name: "Limited retailers (for now)", + description: + "We’re starting small with a couple merchants and expanding fast.", + icon: BuildingStorefrontIcon, + }, + { + name: "Feedback-driven roadmap", + description: + "Tell us what’s confusing, wrong, or missing — we’ll fix that first.", + icon: ChatBubbleLeftRightIcon, + }, + ]; + return (
{/* Abstract Brand Background */} @@ -112,48 +162,71 @@ export default function HomePage() { {/* Top Bar / Logo */}
-
- Battl Builders Logo -
+ Battl Builders Logo
- - Private Beta • Coming Soon - +
{/* Hero */} -
+
-

+
+ + Private Beta + + AR-15 focus +
+ +

Stop Guessing. - - Start Building. - + Start Building.

+

- From part comparisons to full-build matchups, Battl Builders helps - you find the right components, catch compatibility issues, and - score the best deals — all without juggling tabs or spreadsheets. + Battl Builders helps you plan an AR-15 build faster: choose parts + by role, get basic compatibility guidance, and compare real + listings—without juggling tabs or spreadsheets.

    -
  • • Side-by-side part & build comparisons
  • -
  • • Smart compatibility checks
  • -
  • • Live pricing from vetted merchants
  • -
  • • Save & share builds with your crew
  • -
  • • Vote on the cleanest, meanest setups
  • +
  • • Guided part roles (no “where does this go?”)
  • +
  • • Basic compatibility warnings
  • +
  • • Live pricing from current retailers
  • +
  • • Save builds to your account
+ +

+ Early access beta. Data, pricing, and available parts are still + evolving. +

{/* Beta Form */} -
+

Join the Beta List

@@ -177,7 +250,7 @@ export default function HomePage() { onChange={(e) => setEmail(e.target.value)} placeholder="you@gearjunkie.com" disabled={status === "loading" || status === "success"} - className="mt-1 w-full rounded-md border border-zinc-800 bg-zinc-950 px-3 py-2 text-sm text-zinc-50 outline-none ring-amber-500/30 placeholder:text-zinc-600 focus:border-amber-400/80 focus:ring-2 disabled:opacity-60 disabled:cursor-not-allowed" + className="mt-1 w-full rounded-md border border-zinc-800 bg-zinc-950 px-3 py-2 text-sm text-zinc-50 outline-none ring-amber-500/30 placeholder:text-zinc-600 focus:border-amber-400/80 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-60" required />
@@ -196,8 +269,8 @@ export default function HomePage() { onChange={(e) => setUseCase(e.target.value)} rows={3} disabled={status === "loading" || status === "success"} - placeholder="E.g. Comparing build costs, finding the best deals, sharing my builds, weird influencer shit..." - className="mt-1 w-full rounded-md border border-zinc-800 bg-zinc-950 px-3 py-2 text-xs text-zinc-50 outline-none ring-amber-500/30 placeholder:text-zinc-600 focus:border-amber-400/80 focus:ring-2 disabled:opacity-60 disabled:cursor-not-allowed" + placeholder="E.g. Planning a build, comparing costs, sanity-checking compatibility..." + className="mt-1 w-full rounded-md border border-zinc-800 bg-zinc-950 px-3 py-2 text-xs text-zinc-50 outline-none ring-amber-500/30 placeholder:text-zinc-600 focus:border-amber-400/80 focus:ring-2 disabled:cursor-not-allowed disabled:opacity-60" />
@@ -215,14 +288,14 @@ export default function HomePage() { I agree to the{" "} Terms of Service {" "} and{" "} Privacy Policy @@ -261,19 +334,6 @@ export default function HomePage() {

)} - {status === "success" && ( - - )} -
Already invited?{" "} @@ -284,6 +344,82 @@ export default function HomePage() {
+ {/* Screenshot Section */} +
+
+
+ {/* Screenshot */} + Battl Builders app screenshot + + {/* Bottom fade */} + +
+
+ + {/* Info Section */} +
+
+

+ Everything you need to test the core +

+

+ Build smarter rifles — without the spreadsheet lifestyle. +

+

+ This private beta is focused on one thing: helping you plan an + AR-15 build faster and with fewer mistakes. It’s early, it’s + evolving, and your feedback will decide what we build next. +

+
+ +
+ {features.map((feature) => ( +
+
+
+
+ {feature.description} +
+
+ ))} +
+ +
+
+ What feedback we want +
+
    +
  • • Where you got confused or stuck
  • +
  • • Warnings that felt wrong (or missing)
  • +
  • • Parts you expected to find but couldn’t
  • +
  • • If this beats your current build-planning process
  • +
+

+ By joining the private beta, you agree features, data, and pricing + may change. +

+
+
+ {/* Footer strip */}