5 tips for building a pre-Kickstarter landing page with Claude Code in a couple of hours.
The actual prompts I gave Claude Code, and the 5 tricks that saved most of the time.
A quick intro about this blog.
I’m a consumer hardware founder. Lovebox — the small wooden box with a pixel heart you may have seen — has shipped ~300k devices. This year I’m launching two more, KEEP and Makea, without raising a dollar.
The mission of this blog is to show that AI is bridging the gap between creativity and the market — and to inspire creators to step into that new power. What used to take capital, a team and months of collaborative work now fits in a few days and costs a few hundred dollars of tokens.
Why a pre-Kickstarter landing page matters.
Kickstarter mostly pushes projects that get backers in the first 24 hours. Launch cold and you die. The pre-launch page exists to prevent exactly that — it collects emails before launch day so day one isn’t day one. The one I needed to build was for KEEP, my next product, opening on Kickstarter June 11.

The Challenge: get a pre-Kickstarter landing page ready before Monday morning.
I had Monday as the reveal date and Friday afternoon as the start. Two hours of real iteration on Saturday and it was live. Nothing about it was clean or planned. That’s kind of the point of this post — even doing it roughly works.
The Prompts.
The whole thing took two prompts, both written that weekend. The first — Friday afternoon — gave Claude the brief and built the five initial concepts. The second — Saturday — fed Victor’s feedback in and queued up the photo placeholders. The yellow highlights map to the five tips below.
Prompt 1 — Friday afternoon: build five concepts.
https://en.lovebox.love/products/keep-beta-test-version file:///Users/jeangregoire/Documents/GitHub/marketing-material-lovebox-and-keep/packaging-and-user-guide/output/keep-brand-guidelines.pdf file:///Users/jeangregoire/Documents/GitHub/life-manager-data/state/docs/keep-press-kit.htmlTip 01 Build a pre-Kickstarter landing page for KEEP using the three sources above as the only inputs. Link 1 is the live Shopify page for the paid beta — photography, spec table, "how it works." Link 2 is the brand guidelines. Link 3 is the press release with the current copy. The page has one job: collect emails before the Kickstarter opens on June 11, with one "notify me on launch day" form above the fold. First, study how the best pre-Kickstarter pages convertTip 02, then generate five distinct editorial concepts behind a ?variant= query parameterTip 03. Only use images already present in the three sources above. Apply the brand guidelines uniformly. Use Anthropic's frontend-design skill for the implementation. When you are done, open each variant yourself, confirm the form submits end-to-end, and iterate until all five are review-ready before pinging me. Create a new repository called keep-landing-page. Use the same tech stack as: /Users/jeangregoire/Documents/GitHub/makea-website
Prompt 2 — Sunday night: integrate Victor’s feedback.
Please integrate the feedback from the Slack thread below. https://lovebox.slack.com/archives/D027F09DHA5/p1778884364477829Tip 04 For the new product photos Victor is asking for (the keychain in a car, in a coat pocket, etc.), integrate a swipeable slideshow in the lifestyle section. I will send the images later. For now, put placeholders for each photo with a short caption describing the scene ("keep in a car", "keep in a coat pocket", etc.), so the layout is review-ready while I generate them in parallel.Tip 05 Once placeholders are in, open the page yourself and confirm the slideshow scrolls smoothly before pinging me.
01 Give Claude just enough context. Not more.
That’s the first yellow block in Prompt 1 above. Three sources — that’s all the context Claude got:
- The link to the live Shopify page for our paid beta. Already had the photography, spec table, how-it-works.
- The KEEP brand guidelines. I’d written them with Claude Code a few weeks earlier — once the guidelines exist as a file, every later asset can be told to read them.
- The press release Victor and I had finalized the week before. Current wording, current dates.
The tempting move is to dump everything in — old drafts, meeting notes, every Slack thread that mentioned the product. Don’t. The more sources Claude reads, the more it averages across them and the more generic the output gets. Three sources, each carrying something the other two didn’t. That seems to be the sweet spot for me.
02 Tell Claude to research the best practices.
Second yellow highlight in Prompt 1 — “First, study how the best pre-Kickstarter pages convert.” That single line does a surprising amount of work. Claude treats it as part of its planning step, gathers whatever it can find about what tends to work in pre-Kickstarter conversion, and designs with that already in mind. I don’t get a separate analysis handed back, I just get a noticeably better page.
The bit that surprised me when I noticed it: this is basically auto-building a skill on the fly. You’d think you need to go install a custom “Kickstarter pre-launch expert” agent, or write a long system prompt for the domain. Most of the time, you don’t. One sentence in your normal prompt and Claude does the same work, without the overhead of maintaining a separate skill. I do this for almost any non-trivial build now.
03 Ask for several variations — not one.
Third highlight in Prompt 1 — “then generate five distinct editorial concepts behind a ?variant= query parameter.” Five variants of the same page behind /v1 through /v5 on the same site, plus a chooser at the root so I could click through them.

source_variant field, so I could tell later which one was working.Worth saying clearly: this is a serious time-saver. Asking for five variants in one prompt does in a single round what would otherwise take ten — each round of “no, try something else” eating half an hour of generation, review, and typed feedback. The way I try to optimize the flow with Claude Code: round one generates a lot, round two — built on my feedback on the five — should already be almost there, then a few very small rounds for final touches. You want to be almost done by round two, not still hunting for the direction at round six.
It’s also, in my opinion, way better than trying to think it through yourself and writing precise instructions. You’d think detailed direction = better result, but the opposite is closer to true. You end up imposing the design you happen to have in your head, which is usually not the best one available. Asking for five variations lets Claude surface options you wouldn’t have come up with — and then you react to real artifacts instead of imagined ones.
Honest take: out of five, only one really felt right. Three were instantly deletable. One was tempting. That ratio is the whole reason to ask for five — you’re not picking the best of five equal options, you’re paying for four discards to find the one.
A small variant of this trick I use a lot: once I’ve clicked through the five, I rarely pick one cleanly. More often I tell Claude “take the hero from V2, the spec sheet layout from V4, and the headline tone from V3, and merge them into a sixth version.” That hybrid is usually the real answer. The five proposals are the menu; the final dish is something you compose from them.
One of the variants was the brutalist studio version. Wooden desk, soft light, keychain shot like a small luxury object. Quite clean — but also quite boring. Could have been any product page on the internet.

The KEEP screen is literally pixel-art. The Lovebox logo is a pixel heart. So the variant that leaned all the way into that — pixel-font headers, BETA 2026 cartridge badge, giant pixel heart behind the hero, ► play-buttons on every CTA — actually had a reason to exist that no one else on the internet could copy. That’s the one I picked.

Sent the URL to Victor (co-founder, Paris) on Slack on Saturday morning and went for a walk.
04 Wire up the Slack MCP — feedback integration is one thread URL away.
Basic setup, big time-saver once it’s done.
The actual unlock is connecting Slack to Claude Code via MCP. Once that’s wired up, you stop pasting feedback into Claude one comment at a time. You give Claude the link to the Slack thread, and it reads the whole exchange itself — the original feedback plus every reply — and integrates the changes. That’s exactly what Prompt 2 above does.
In my case: Victor came back a couple of hours later in Slack — tighten the discount copy, soften the second paragraph, add product shots in real-use contexts (car, pocket, backpack).
The important detail — and the bit I’d push back on if you read AI build-in-public threads where someone hands every piece of feedback straight to an agent — is that I replied to Victor in the Slack thread first. With my own takes. “Yes on the discount copy, will tighten. On the lifestyle shots, great idea — I’ll add three. Disagree on softening the second paragraph, here’s why.” Only after that round of human exchange did I give Claude the thread URL.
I don’t believe in building an early-stage business without a lot of human in the loop. Just enough, not more than enough. The judgment about which feedback to act on, where to push back, what to adjust — that’s the work, and it’s the part I actually want to do. Skipping it produces noticeably worse results, pretty fast.
Two upsides of doing it this way:
- Claude sees the actual back-and-forth — Victor’s feedback plus my answers. No paraphrasing on my end.
- Victor stays where he already works. He’s not going to leave Slack to debate in a tool he doesn’t use.
05 Work in parallel with Nano Banana. Use placeholders.
Also a stupid basic trick — but I really like it.
Some of Victor’s feedback (the second yellow block in Prompt 2 above) was about photos that didn’t exist yet — the keychain hanging from a rearview mirror, in a coat pocket. We weren’t going to do a photo shoot on Saturday afternoon.
So I asked Claude to integrate every other piece of feedback first, with descriptive placeholders where the new photos would go. While Claude worked on that, I opened Nano Banana in another window and started generating the photos in parallel.
“Create an image of the KEEP bamboo keychain swinging as a pendant from a car’s rearview mirror, soft afternoon light.” First pass — good. Copy, paste, replace the placeholder. “Same product, resting in a jacket pocket.” First pass — off. One more iteration. Good. Replace.
The reason I like this pattern: I could in theory go off and work on a completely different project while Claude iterates, but I hate constantly switching contexts. Every switch costs me focus and I optimise pretty hard to keep that to a minimum. So instead, I stay on the same task — the landing page — and split it into two sub-tracks running in parallel. Claude on the code, me on the photos. Total time collapses to whichever is slower (usually Claude). The placeholders are the unlock — without them, the photos block the code and you end up doing it all sequentially.
What didn’t get automated.
Reading this back, it might sound like Claude did everything. It didn’t. The actually creative inputs — the ones that ended up making the page feel like KEEP and not like another product page — all came from me. A few examples from this build:
- The idea of a flip animation on the keychain in the hero, so you see both the e-ink front and the bamboo back without scrolling.
- The tagline itself — “KEEP THEM CLOSE, wherever you go.” Took a few tries. Claude offered a handful of directions, none of them landed; this one came from a notebook, not from a prompt.
- A handful of small copy simplifications — sentences Claude wrote in two clauses where one was enough. Most of the editing on the final page is this kind of trim.
- Pushing the CTAs to be a bit more aggressive. This is a Kickstarter pre-launch, not a polite newsletter signup — “JOIN THE WAITLIST ►” lands differently from “Subscribe.”
- Picking which Nano Banana generations were actually usable versus just convincingly plausible.
- Choosing the pixel-arcade direction over the brutalist studio one in the first place.
None of that gets handed off, and I wouldn’t want it to. It’s where the work is.
Technical notes.
For the curious. If you’re doing the same thing on a different product:
► The stack
- Site generator
- Astro 5.
- Styling
- Tailwind.
- Hosting
- Netlify. For a project this small, I just work locally on
mainand push when I’m done — Netlify rebuilds and ships in about 30 seconds. If I want a second pair of eyes before going live, pushing to adevbranch instead gives me a separate preview URL I can drop to a partner. Didn’t need it here. - Email capture
- Netlify Forms — no backend needed.
- SEO
- Sitemap, Open Graph, JSON-LD — all wired up by Claude in one shot.
- Brand discipline
- During the Claude Code session I asked Claude to transform the brand guidelines PDF I’d given it into a structured
DESIGN.mdfile in the repo, with YAML tokens for colors, typography and spacing. Every later UI change has to respect that file — without it the page would have drifted.DESIGN.mdsits next to aCLAUDE.mdin the same repo, following the now-shared agents.md convention (the cross-vendor standard for agent-context files, supported by Claude Code, Cursor, Codex and others). - Visual QA
- Playwright via the Playwright MCP — Claude takes screenshots between iterations and reviews them itself before pinging me.
Total time: about 2.5 hours on Friday to set up the project and iterate the five concepts into one, then off to Victor for feedback, then about an hour later to integrate the feedback, do final touches, and publish. So roughly 3.5 hours of actual work — split across two sittings. Marginal spend: $0. The whole AI stack I run for this and every other project is about $300/month, and it pays for itself many times over.
What should I write about next?
A few things are already on my list: iterating on hardware design with Nano Banana before the mechanical engineer touches CAD, turning shady NFC chip datasheets into working iOS and Android modules with Claude Code, writing a PCB engineer spec that doesn’t waste rounds, designing product packaging without a packaging studio. The full list is on the homepage.
But I’d rather hear from you than guess. If there’s something you’re stuck on, or something you want me to dig into, drop me a line at me@jeangregoire.com. I read every email.
Page is live at keep.lovebox.love. KEEP opens on Kickstarter on June 11, 2026.