Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Calm Studio — Digital Downloads Storefront

og-image

A lightweight, dependency-free storefront template for selling digital products (Notion templates, webapps, PDFs, spreadsheets, desktop utilities). Built as a static site with vanilla HTML, CSS, and JavaScript — no frameworks, no build step, no tracking scripts.

Features

  • Product catalog with category filtering (Templates, Webapps, Apps, PDFs, Spreadsheets)
  • Shopping cart with quantity steppers, persisted via sessionStorage
  • Checkout flow with form validation and a simulated payment step (demo mode)
  • My Downloads library — purchases saved to localStorage, delivered instantly
  • Product image previews in an accessible lightbox modal
  • License terms modal shown pre-purchase
  • SEO ready — Open Graph / Twitter cards, JSON-LD product schema, canonical URLs, robots.txt, sitemap.xml
  • Accessible — keyboard-friendly modals, focus-visible styles, ARIA labels, Escape-to-close
  • Zero dependencies — single stylesheet, inline JS, data-URI SVG product images

Tech Stack

Layer Choice
Markup Semantic HTML5
Styling Plain CSS (custom properties)
Behavior Vanilla ES6+ JavaScript
Storage localStorage / sessionStorage
Hosting Any static host

Project Structure

digital-downloads-website/
├── index.html      # Storefront: hero, catalog, cart, checkout, FAQ
├── privacy.html    # Privacy policy
├── terms.html      # Terms of service
├── 404.html        # Not-found page
├── style.css       # Design system + shared styles
├── robots.txt
└── sitemap.xml

Run Locally

No build step required. Serve the folder with any static server:

python3 -m http.server 8000
# then open http://localhost:8000

or simply open index.html directly in a browser.

Note: purchases are stored per-browser (localStorage). Clearing site data resets your library.

Before You Launch

The demo ships with placeholders you should replace:

Location Placeholder Replace with
Canonical / OG / schema URLs https://your-domain.com/ Your real domain
index.html OG meta og-image.jpg A 1200x630 social preview image
index.html Organization schema logo.png Your logo
terms.html Governing Law [Your Country/State] Your jurisdiction
sitemap.xml / robots.txt your-domain.com Your domain

Accepting Real Payments

Checkout is simulated by design. To go live:

  1. Fastest: create products on Stripe Payment Links, Lemon Squeezy, or Gumroad and point the Buy buttons at those checkout URLs.
  2. Full control: replace the simulate function in index.html with server-side Stripe Checkout, deliver files from secure storage after webhook confirmation.

Deployment

Works on any static host:

  • GitHub Pages — Settings → Pages → deploy from branch
  • Netlify / Vercel — drag-and-drop or connect the repo
  • Cloudflare Pages — connect the repo

License

The template code is released under the MIT License — free to use, modify, and build your own store on it. Product names, prices, testimonials, and legal page text are illustrative content and are not covered by the code license.

About

Static storefront template for selling digital products — vanilla HTML/CSS/JS, no build step

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages