A static site: black background, full-screen images with gentle zoom, and short stories that appear as you scroll. Sections snap into place.
public/– Deployable site:index.html,images/(PNGs and optionalimages/webp/)scripts/–optimize-images.jsconverts PNGs to WebP for smaller, faster loading
Serve the public folder (e.g. with live-server):
npx live-server publicOpen the URL it prints (e.g. http://127.0.0.1:8080).
| Command | Description |
|---|---|
pnpm run optimize |
Convert public/images/*.png to WebP in public/images/webp/. Uses sharp (installed on first run if needed). |
pnpm run deploy |
Rsync public/ to pgs.sh:/habtitat/. |
pnpm install # optional, only if you use optimize
pnpm run deployOnly the contents of public/ are synced (no .git, node_modules, or project files).
- Static HTML, CSS, and vanilla JS
- No build step; edit
public/index.htmland refresh - Images: responsive, lazy-loaded; first image eager for LCP
- Scroll snap so each section aligns to the viewport
- Optional WebP via
<picture>whenpublic/images/webp/exists