AGENTS.md
AGENTS.md
Personal blog: Jekyll site on GitHub Pages (github-pages gem, Ruby >= 3.2). See README.md for setup.
Commands
./run.sh– minifies CSS/JS (reduce.sh) thenbundle exec jekyll serveon 127.0.0.1.sh reduce.sh– regeneratescss/main.min.cssandjs/main.min.jsfromcss/main.css/js/main.js.python generate_tags.py– regenerates thetag/pages from post front matter../generate_icons.sh– regenerates all favicons fromimg/michal.jpeg(needs ImageMagick).
Conventions
- Edit
css/main.css/js/main.js, never the.minfiles, then runreduce. The layout loadsmain.min.css, so forgetting to minify means your change doesn’t show up. - Both
.minfiles and generated tag pages are committed. _site/is build output; don’t edit it.- New posts go in
_posts/(YYYY-MM-DD-title.md) withtags:in front matter; rungenerate_tags.pyafter adding a new tag. - Layouts:
_layouts/default.html(head, icons, header) and_layouts/post.html(bio, comments, prev/next, footer links). - Profile photo:
img/michal.jpeg. It is used in the header and the post bio, and the favicons derive from it. After changing it, run./generate_icons.sh(override the face crop withCROP=WxH+X+Yif needed).
CSS gotchas
#main-space a:link/:visitedadds a lightborder-bottomto every link. New link or card styles inside#main-spaceneed the#main-spaceprefix (and:link/:visited) to override it.- Some button rules use
!important(e.g..btn--solidborder,.post-footer-actions .btncolour); check specificity before restyling buttons. - CSS comments are a mix of Polish and English; write new ones in English.
Style preferences
- Keep the post footer calm: one clear action at most, others as quiet text links.
- Use
relative_urlfor internal links in templates. - Analytics hooks use
data-event/data-section/data-element/data-positionattributes; keepdata-sectionaccurate for the page it’s on. - No tests or CI exist; verify visual changes with
./run.sh.