slides from July atproto.la meetup talk on an atmospheric cms

Files
README.md

Slides #

All of my talks, built with Slidev and published together.

talks/<slug>/   one talk each: slides.md, style.css, img/, components/, …
template/       copied by `pnpm new`
scripts/        new / dev / build / export

Usage #

  • pnpm install
  • pnpm new my-talk "My talk title" — scaffold talks/my-talk from template/
  • pnpm dev my-talk — present/edit at http://localhost:3030
  • pnpm build — build every talk to dist/<slug>/ plus an index page at dist/index.html
  • pnpm build my-talk — rebuild just one
  • pnpm export my-talk — PDF to exports/my-talk.pdf (needs playwright-chromium)

Extra flags are passed through to Slidev, e.g. pnpm dev my-talk --port 3031.

Dependencies live in the root package.json and are shared by every talk. The index page lists talks by the title and date in each slides.md headmatter, newest first. Once a talk's recording is up, add video: <url> to its headmatter and the index links to it next to the deck.

Deploy #

Hosted on Cloudflare Pages (project tyler-fun-slides) at https://slides.tyler.fun. A push to main runs .tangled/workflows/deploy.yml, which runs pnpm build and then wrangler pages deploy dist; a failed build never deploys. The build writes a dist/_redirects that gives every /<slug>/ its own SPA fallback, so new talks need no config.

Talks #