Source for dorisslam.ca. Built with Next.js (App Router) + Tailwind, deployed on Cloudflare Pages.
npm install
npm run dev # http://localhost:3000
npm run build # production build
npm run lint
app/
layout.tsx # root layout, fonts, theme, dino canvas
page.tsx # home (single-viewport, scroll locked)
projects/ # /projects index + /projects/[slug] detail
misc/ # /misc (top artists + favourite albums)
api/spotify/ # spotify endpoints
components/
main-content.tsx # home content
projects.tsx # project data, list, and detail body
dino-game.tsx # chrome dino canvas at the bottom of every page
...
public/
dino-sprite.png # chrome dino sprite sheet
icon.png # favicon (cropped dino)