Skip to content
Framework: Vite + React + TypeScriptDifficulty: beginner

Product landing page

A conversion-focused landing page with hero, features, pricing, and FAQ sections.

A single-file React landing page with header, hero, three feature cards, a three-tier pricing grid and a footer. All copy is placeholder text you replace by prompting Codexa. Good for trying the AI agent on layout and tone changes.

  • react
  • landing
  • marketing
  • tailwind

This preview is the template's actual file tree and source code — exactly what is copied into a new project. Codexa does not publish screenshots or mock-ups of templates; run the project to see it rendered.

Files9 files

src/App.tsx38 lines
export default function App() {
  return (
    <div className="min-h-screen bg-white text-slate-900">
      <header className="mx-auto flex max-w-5xl items-center justify-between px-6 py-5">
        <span className="font-semibold">Launchpad</span>
        <a href="#pricing" className="rounded-lg bg-slate-900 px-4 py-2 text-sm font-medium text-white">Get started</a>
      </header>
      <section className="mx-auto max-w-3xl px-6 pt-16 pb-20 text-center">
        <h1 className="text-4xl font-semibold tracking-tight sm:text-5xl">Ship your product faster</h1>
        <p className="mt-4 text-lg text-slate-600">Replace this copy with your value proposition. Ask Codexa to adjust tone, sections, and layout.</p>
        <div className="mt-8 flex justify-center gap-3">
          <a href="#pricing" className="rounded-lg bg-blue-600 px-5 py-3 text-sm font-medium text-white">Start free</a>
          <a href="#features" className="rounded-lg border border-slate-300 px-5 py-3 text-sm font-medium">Learn more</a>
        </div>
      </section>
      <section id="features" className="mx-auto grid max-w-5xl gap-6 px-6 pb-20 sm:grid-cols-3">
        {["Fast setup", "Secure by default", "Scales with you"].map((f) => (
          <div key={f} className="rounded-xl border border-slate-200 p-6">
            <h3 className="font-medium">{f}</h3>
            <p className="mt-2 text-sm text-slate-600">Short description of this feature and why it matters.</p>
          </div>
        ))}
      </section>
      <section id="pricing" className="bg-slate-50 py-20">
        <div className="mx-auto grid max-w-5xl gap-6 px-6 sm:grid-cols-3">
          {[["Free", "₹0"], ["Pro", "₹999/mo"], ["Team", "₹2,999/mo"]].map(([name, price]) => (
            <div key={name} className="rounded-xl border border-slate-200 bg-white p-6">
              <h3 className="font-medium">{name}</h3>
              <p className="mt-2 text-2xl font-semibold">{price}</p>
              <a href="#" className="mt-6 block rounded-lg bg-slate-900 px-4 py-2 text-center text-sm text-white">Choose {name}</a>
            </div>
          ))}
        </div>
      </section>
      <footer className="mx-auto max-w-5xl px-6 py-10 text-sm text-slate-500">© {new Date().getFullYear()} Launchpad</footer>
    </div>
  );
}

Dependencies

Documented from the template's package.json. The runtime has a prebuilt dependency set for Vite + React + TypeScript, so installs are fast.

PackageVersion
react^19.1.0
react-dom^19.1.0
vite^6.3.0
@vitejs/plugin-react^4.4.0
tailwindcss^4.1.0
@tailwindcss/vite^4.1.0
typescript^5.8.0

How it runs

Framework
Vite + React + TypeScript
Dev command
npm run dev
Build command
npm run build
Output directory
dist
Port
5173
Opens at
/
Difficulty
beginner

Projects run in an isolated sandbox with a live preview. Read the projects documentation for details on settings, snapshots and deployment.

View all
  • Framework: Static HTML/CSS/JSDifficulty: beginner

    Landing page (static)

    A single-page HTML landing page with sticky nav, hero, features, pricing, FAQ, and an email capture form.

    • html
    • css
    • landing
    • marketing
    • static

    4 files

Need the raw data? GET /api/v1/templates/vite-react-landing returns this template with its files.

Build on Product landing page

Create a free account, start from this template, and ask the AI agent to turn it into your app.