Appica StoreAppica Store

The Next.js eCommerce template that already works

3 handcrafted storefronts on 1 typed data layer. Cart, checkout, accounts, and order tracking run end to end on the demo data. Keep the store you need, connect your backend, and ship.

Built withNext.js 16React 19TypeScriptTailwind CSS 4Appica UI 1.3

3 storefronts92 pages204 demo products74 UI components37 Server Actions

3 handcrafted storefronts

Each demo is a whole store in 1 folder, from the home page to the legal pages, designed for its niche rather than reskinned. Pick the one closest to yours; 1 command removes the rest and serves it at /.

pnpm install

pnpm use-demo fashion

This keeps Fashion and serves it at /.

Reducing...

Checking...

ok Route types

ok Type-check

ok Lint

Fashion is the only store now, served at /.

  • Deletes the other demos, the landing page, and the showcase menus
  • Merges the store’s tokens into globals.css and serves it at /
  • Type-checks, lints, and formats before it hands back
How it works, in the questions below

Everything a store needs, already wired

Not mock screens. Each module is an engine shared by all 3 stores, drawn 3 ways, and running on the demo data the moment you clone.

Find and choose

The sidebar renders whatever filters your data returns: price, color families, brands, sizes, ratings. Add a filter in the dataset, never in a component. 7 sort orders, numbered pages or load more, and every refinement lives in the URL, so a filtered page is a shareable link.

Buy and come back

A drawer for the quick add and a page for the long look, sharing 1 line component: quantity, variant, remove, save for later. Discount codes, a free-delivery meter, and loyalty points are 1 hook each.

Also in the box

  • Blog with its own content adapter
  • About
  • Contact
  • Privacy, Terms, Accessibility
  • 404 with its own artwork
  • Login, register, OTP
  • Loyalty program
  • Protection plans
  • Trade-in
  • Bundles
  • Back-in-stock alerts
  • Instagram feed
  • Klarna messaging
  • Dark mode

AI surfaces, ready for your model

Every AI feature ships as a finished interface with a demo answer and 1 prop to connect your model. No SDK, no vendor, no lock-in: wire a Server Action and the shopper reads the reply.

The demos answer with sample replies. Nothing calls a model until you connect one.

A floating panel on every store that greets, offers prompts, and keeps a thread; a bottom drawer on phones so the keyboard never covers it. Wire onAsk to your model or your support stack.

Your backend, behind 1 interface

Screens never call a platform. They call a typed CommerceAdapter: 22 required methods, 22 optional ones that render nothing when missing, and 1 line to bind yours. Blog and auth have seams of their own, so a CMS and a commerce backend swap independently.

  1. 01Shop the demosEvery page, no backend.
  2. 02Keep 1 storepnpm use-demo <demo>
  3. 03Bind your adapter1 line in config.ts.
  4. 04ShipAnywhere Next.js runs.

src/lib/commerce/config.ts

import 'server-only' import type { CommerceAdapter } from './adapter'import { demoAdapter } from './adapters/demo' /** * The adapter every commerce read and write goes through. Connect your backend * by writing a {@link CommerceAdapter} and putting it here in place of the demo * data; the `commerce-adapter` skill walks through it. * * This module is server-only, so an adapter can read its credentials from * `process.env` and they never reach the client bundle. */export const adapter: CommerceAdapter = demoAdapter /** * Whether the demo data is still the adapter in use. Sample account data that * names its products, such as the demo offers, shows only while it is. */export const isDemoCommerce = adapter === demoAdapter
CommerceAdapter
22 required · 22 optional
ContentAdapter
3 methods
AuthAdapter
4 required · 2 optional

Shopify, WooCommerce, Medusa, or your own API: the commerce-adapter skill walks your agent through writing the adapter. Platform adapters are not included.

Built the way you would build it

Modern Next.js, strict TypeScript, and a design system whose source you can read.

  • Next.js 16 App Router

    React Server Components, Server Actions for every write, typed routes, and 1 root layout per store so overlays inherit its theme.

  • TypeScript end to end

    Strict types from the adapter interface to the route props. 37 Server Actions re-validate their input on the server.

  • Tailwind CSS v4 tokens

    Role-based tokens in @theme, no config file, no hex in markup. A store restyles with a few hundred lines of CSS on data-slot hooks.

  • Appica UI, open source

    74 accessible components on Base UI primitives, maintained by the same team, with icons and country flags.

  • Dark mode and RTL-ready

    Every screen in both themes. Logical properties and rtl: variants throughout, with the 2-line switch documented.

  • Accessible by design

    WCAG 2.2 AA as the target: keyboard everywhere, visible focus, 24px targets, and reduced motion honored by every animation.

  • Ready for your AI agent

    AGENTS.md, 17 module guides, and 5 Agent Skills in the open format. Claude Code, Cursor, Codex, and Copilot pick the rules up without being told.

  • Documented and verified

    JSDoc on every exported component, hook, and type, so the API shows on hover. pnpm verify runs ESLint, tsc, and Prettier before anything ships.

Built with
  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • Motion
  • Base UI
  • Vercel

Questions buyers ask

No. Every page runs on bundled demo data: no environment variables, no account, no services. pnpm install and pnpm dev is the whole setup.