Skip to content

Luma

App Landing Page Pro Agent-ready i18n-ready HTML Next.js

A light, pastel theme for a mobile app. A lavender and aqua hero with three phone previews you edit as text, features, use-case tabs, pricing, an FAQ, an early-access page with a waitlist form, a support page and a journal.

$49

Editions: Astro (source), HTML (plain files, no build), Next.js (React project).

Read the Luma docs Lifetime updates Personal & client use
All-Access Pass

One payment for Luma and everything else - all 39 themes, every future release, and the Astro visual builder included.

$1793 $159 one-time
Get the All-Access Pass
A closer look

See Luma in action

Every page and section is part of the download. Use these as launch-day templates - keep the structure, swap the copy.

Gradient hero with phone previews
Features
Use-case tabs
Widget details
How it works
Pricing
Journal with category filters
Journal article
Early-access waitlist page
Support page and contact form
10
Static pages
3
Editable phone previews
1 file
All copy, screens and prices
Astro 7
+ Tailwind v4

Luma is built for a mobile app, before launch or after it. The first screen is a soft lavender and aqua gradient with a large headline, a serif accent line and three overlapping phones. The phone screens are built in HTML, so their text and numbers come from the config file, and any of them can be swapped for a real screenshot. Below the hero come six feature cards, use-case tabs, a home-screen widget section, three steps, three pricing plans, an FAQ, the latest journal posts and a sign-up call to action. The early-access page collects emails for a waitlist and the support page has a contact form. Every word, link, phone screen, price, article and form field lives in one src/config/site.ts, and both forms start in an honest demo mode until you connect Formspree, FormSubmit, Netlify or your own endpoint.

Best Fit For

  • Mobile apps collecting an early-access waitlist
  • Productivity, notes and wellbeing apps
  • Indie developers launching an iPhone or Android app
  • Apps with a free plan and paid monthly or yearly plans

Full Page Set

Every page is real and editable - no placeholders, no "coming soon" stubs.

Home
Early Access
Support
Journal
3 Journal Articles
Privacy
Terms
404

12 Sections Included

Every section is a ready-to-use Astro component. Add it to any page, customize via config, or remove what you don't need.

Header / Nav
Floating pill navigation with a download button and a mobile menu
Gradient Hero
A lavender and aqua hero with a serif accent line and three overlapping phone previews
Features
Six cards in three columns, one of them holding a phone preview
Use-Case Tabs
Work, life and ideas tabs, each with its own preview card and points
Widget Details
A home-screen widget illustration beside three detailed features
How It Works
Three numbered steps inside a pastel panel
Pricing
Three plans with a best-value badge and a list of what every plan includes
FAQ
Expandable answers to common questions
Journal Preview
The latest articles with cover photos
Call to Action
A gradient sign-up panel that overlaps the dark footer
Waitlist Form
An early-access page that collects emails, with demo, Formspree, FormSubmit, Netlify or a custom endpoint
Support Form
A contact form with configurable fields beside a direct email address

What's Included

Astro 7, Tailwind CSS 4 and TypeScript
Gradient hero with three phone previews built from site.ts text, each replaceable with a screenshot
Use-case tabs with arrow keys, Home and End, and right-to-left support
Early-access page with a waitlist form and a support page with a contact form
Both forms with demo, Formspree, FormSubmit, Netlify and custom endpoint modes
Form fields set in site.ts: order, labels, types, required fields and options
Journal with category filters, three articles, a table of contents and related articles
JSON-LD structured data on every indexable page, including the articles
Translation-ready routes with right-to-left support
GSAP hero entrance and reveals, page fades, all off with reduced motion
Inter, Inter Tight and Instrument Serif self-hosted, three original journal photos
AGENTS.md, CLAUDE.md and a README with editing guidance included

Phone screens you edit as text

The three phones in the hero are built in HTML: a collections screen, a focus timer and a weekly chart. Their labels and numbers live in site.ts, and each screen takes a screenshot path when you have real ones.

A waitlist before launch

The early-access page collects emails. The Get Luma button, the pricing buttons and the closing call to action all point to it. Connect Formspree, FormSubmit, Netlify or your own endpoint; until then the demo mode says plainly that nothing was sent.

Pricing, FAQ and support

Three plans with a best-value badge, an FAQ and a support page with a contact form cover the questions people have before they download. The plans are display only, so they link wherever you choose.

Ready for more languages

Copy the template file, translate what you need and register it. Every page gets a version under the language code, anything you leave out falls back to English, and right-to-left languages work too.

Tech Stack

Astro 7 Tailwind v4 TypeScript GSAP JSON-LD Responsive

Config-Driven Setup

Luma keeps every string, the three phone screens, the use cases, the prices, the journal articles and both forms' fields and delivery settings insrc/config/site.ts. Articles are entries in site.ts rather than Markdown files, and both forms stay in an honest demo mode until you choose a provider.

site.ts
// src/config/site.ts
export const site = {
  name: "Luma",
  url: import.meta.env?.PUBLIC_SITE_URL || "https://example.com",
  metadata:  { themeColor: "#edf3f7", image: "/images/social.png" },
  hero:      { title: "Your everyday, together...", accent: "A lot more you." },
  screens:   { library: { image: "", title: "Your space.", ... }, focus: {...}, activity: {...} },
  useCases:  { items: [{ id: "work", label: "For your work", ... }, ...] },
  pricing:   { plans: [{ name: "Free", price: "$0", href: "/download/?plan=free" }, ...] },
  blog:      { posts: [{ slug: "a-ten-minute-reset", category: "Everyday rituals", ... }, ...] },
  forms: {
    contact:  { fields: defineFields([...]), delivery: defineDelivery({ provider: "demo" }) },
    waitlist: { fields: defineFields([...]), delivery: defineDelivery({ provider: "demo" }) },
  },
};
Agent-ready

Built to be edited by AI

Luma ships an AGENTS.md and a CLAUDE.md at the project root. Claude Code, Cursor, Copilot, and Codex read them the moment you open the folder.

So your agent starts knowing which file to edit, which design decisions are deliberate, and which parts of the theme break quietly if touched. You get the right change on the first pass instead of a confident guess.

  • A task map. Every common request routed to the exact file, so no time is spent exploring.
  • Design invariants. The decisions that make the theme worth buying, marked do-not-touch.
  • The traps. The specific things that break this theme silently, written down.
  • A done checklist. What to build, what to scroll, what to verify before claiming success.
AGENTS.md
# Luma agent guide

- All visible copy, links, images, preview data, form
  schemas and provider settings belong in src/config/site.ts.
- Components use getSiteConfig(Astro.url) to support
  translated overrides; the catchall route builds every path.
- Phone.astro is an illustrative preview, not a live app.
  Every screen can be replaced via screens.*.image.
- Demo forms must never claim data was sent or saved.
- main.ts owns menus, forms and GSAP: abort listeners and
  revert GSAP on Astro swaps, honor reduced motion.

Run format, check, test, verify:i18n and build.

Excerpt. The full file ships with the theme.

HTML

The same design as plain HTML

No Astro, no npm, no build step. Unzip the folder, open index.html straight from your disk and it works. Every page is a plain .html file you edit in any editor, the styling lives in one readable CSS file with the colours at the top, and an optional Tailwind folder is there if you want utility classes back. Deploy it to any static host: Netlify, Cloudflare Pages, GitHub Pages or plain cPanel.

Next.js

The same design as a Next.js project

Luma also comes as a Next.js 16 project with React 19 and TypeScript, built on the App Router. It looks exactly like the live preview: the same pages, sections, interactions and motion, written as React components. The copy lives in one config file. Its routes are ready for more languages. It exports as static HTML, so it deploys to Vercel, Netlify, Cloudflare Pages, GitHub Pages or any static host, and it ships with an AGENTS.md for coding assistants. Included in the All-Access Pass.

Full documentation, ready before you buy

Browse the install guide, the site.ts reference, provider setup, deploy instructions, and the Luma-specific page - all live now.