Skip to content

Latest commit

 

History

History
31 lines (23 loc) · 1.72 KB

File metadata and controls

31 lines (23 loc) · 1.72 KB

Agent Instructions (GitHub Copilot)

This file contains the contextual knowledge of the repo to help AI agents (Copilot, etc.) understand the technical environment of this portfolio/brag document.

Tech Stack

  • Static Site Generator: Jekyll
  • Data: JSON (_data/brag.json, _data/talks.json, etc.)
  • Templates: Liquid
  • Styling: Custom CSS / Glassmorphism (via design-tokens.css and default.html)

Starting the local development environment

To preview and work on the site locally, do not run a classic jekyll serve. The project uses Docker to avoid polluting the host environment with Ruby/Jekyll. Furthermore, the official Docker image jekyll/jekyll uses a recent Ruby version that no longer includes the webrick dependency natively.

Official command to start the server (with Livereload):

docker run --rm -v "$PWD:/srv/jekyll" -p 4000:4000 -p 35729:35729 --entrypoint bash jekyll/jekyll -c "gem install webrick && jekyll serve --livereload --host 0.0.0.0"

Command breakdown for debugging

  1. --rm: removes the container when stopped.
  2. -v "$PWD:/srv/jekyll": mounts the current directory into the server.
  3. -p 4000:4000: exposes the main Jekyll web server port.
  4. -p 35729:35729: exposes the port for --livereload (auto-refresh page on file changes).
  5. --entrypoint bash ... -c "gem install webrick && ...": overrides the image entrypoint to force the installation of webrick before starting Jekyll.
  6. --host 0.0.0.0: mandatory inside a Docker container so the site is accessible from the host machine via localhost:4000.

Git & Cache

Directories generated by the local build (_site/, .jekyll-cache/, etc.) are already ignored in .gitignore. Never commit them.