WebsiteFor Independent bookshop

Setaside

A bookshop website with no checkout. On purpose.

A static website for an independent bookshop with browsable staff picks, a monthly events page and a hold slip customers print or copy and bring to the counter.

Download the source

Zip, 217 KB. MIT licence. Built 19 Oct 2026.

Live preview

Loading the live site…

This is the real site, not a mock-up. Click around; the button on it opens the working app.

What you get

Everything a website needs, already done.

Pages and screens

  • Staff picks shelf
  • Events
  • Reading club
  • Hold slip form
  • Launch page
  • Demo shop

Features

  • Staff picks filtered by genre and mood
  • Printable or copyable hold slip for the counter
  • Events and reading club page
  • Edit four small JSON files, no developer
  • No database, basket or checkout
  • Static files, publish on any host

Palette

  • #1f4d3a
  • #f7f3ea
  • #1c1a17
  • #645e55
  • #d9d2c4
  • #8a2f2f

Style

  • Warm
  • Editorial
  • Minimal
Setaside on a phone
On a phone, as shipped.

For developers

A real codebase, not a page builder export.

Stack

Vite, React 19 and TypeScript for the app. The launch page is plain HTML, CSS and a little JavaScript with no build step. Vitest for unit tests, Playwright for browser tests.

Run it

unzip setaside.zip
cd setaside
npm install
npm run dev

In the zip

  • site/ the launch page with the built app in site/app/
  • src/ and e2e/ the app source and tests
  • docs/technical-docs/ architecture, runbook, quick reference
  • START-HERE.md and LICENSE (MIT)

More like this

Also on the shelf

  • Retail & ShopsWebsite

    Punnet

    A one-page website for a farm stand or greengrocer that shows today's produce prices, a harvest calendar, recipes and a shopping list with a running total.

  • Retail & ShopsTool

    Tag Table

    Pick a category and condition, get a price from your shop's own guide, and print sheets of 24 colour-coded tags for the week's discount colour.

  • Retail & ShopsTool

    Hangtag

    Log each consignment item with its agreed price and split, mark prices down on a schedule, and see what you owe each consignor at month end.