Personal website. Live at https://siddharth7113.github.io.
Built on Jekyll. The original scaffolding came from the al-folio template — kept for the typography and the publication/project pieces, then trimmed down to what I actually use.
The repo ships a Docker Compose setup so I don't have to keep a working Ruby toolchain on every machine.
docker compose pull
docker compose upThen open http://localhost:8080. Live reload is wired up on port 35729; edits to markdown/liquid files re-render without a restart.
If imagemagick errors show up the first time, it's because the image variants haven't been generated yet — they'll appear after the first build.
_pages/— top-level pages (about, projects, books, blog, …)._posts/— blog posts._projects/— project cards rendered on/projects/._books/— books I'm reading. Each book is_books/<slug>.md(the index page) plus a directory_books/<slug>/ch-XX.mdper chapter note. Layouts live in_layouts/book.liquidand_layouts/book_chapter.liquid._news/— short announcement items for the about page.assets/img/— images. Cover images for books go underassets/img/books/._config.yml— site config. Footer text, social handles, collection setup, scholar bibliography settings, all here.
-
Create
_books/<slug>.mdwith front matter:--- layout: book title: <Book title> slug: <slug> # must match the directory name below is_book: true author: <author> status: currently reading # or: paused | finished category: technical # optional, free-form cover: /assets/img/books/<slug>.jpg description: <one-line blurb> ---
-
Drop the cover image at
assets/img/books/<slug>.jpg. -
For each chapter note, create
_books/<slug>/ch-XX.md:--- layout: book_chapter title: "Chapter X — <name>" book: <slug> order: X description: <one-line summary> --- ... your markdown notes ...
The book page auto-generates a table of contents from any chapter file with book: <slug>, sorted by order.
GitHub Actions deploys to GitHub Pages on push to main (see .github/workflows/).