Common repository for my slides/presentations/talks using https://sli.dev/.
All talk slides defined here will appear at
https://<talk>.slides.phip1611.dev.
For example:
- EuroRust 2025: https://eurorust-2025.slides.phip1611.dev/
Hosting is done via my NixOS-based Linux server.
To locally build and serve the slides, you need nodejs and pnpm. They will
run the slidev utility. Without that, you will not be able to use all the
magic including live reload of the spawned dev server, the on-page editor, etc.
Hint: The Nix shell gives you everything you need.
Hint: npm would also work as replacement for pnpm, but in this project I
decided to use pnpm. deno might also work as nodejs replacement.).
The Nix build provided by this project's Flake is only suited for static deployments, not for local development!
$ cd <talk>- Optional/once: Enter the Nix shell
- Optional/once:
$ pnpm install $ pnpm run devto develop and serve slides locally$ pnpm run buildto build a static HTML deployment
The project is also packaged in Nix (flake.nix). You can either
$ nix build . to get all slides or $ nix build .#talk-<name> to only build
a specific talk. The result is a static build of HTML, CSS, JS, and specified
public resources (images, fonts).
You may locally serve that using
$ nix run nixpkgs#simple-http-server -- --index -- $(nix build --print-out-paths .#talk-<name>)
but I strongly suggest to use the local non-Nix workflow for that.