This site is built with Jekyll and uses a simple, clean design focused on readability. The content is written in Markdown and automatically compiled into web pages. It takes (a lot of) inspiration from stephango.com with some modifications and my own design touch.
Preview: https://pasithea0.github.io/microblog-template/
- Markdown content with support for images, quotes, and lists. Designed to support Obsidian-style fontmatter and attachments
- Auto-generated thumbnails for social media sharing (generated during CI build)
- Reading time calculation for each post
- Tag-based topic pages
- Responsive design for mobile and desktop
- Static site generation for GitHub Pages / Cloudflare Pages
- Ruby (with gem)
- pnpm
-
Install Jekyll and Bundler:
gem install jekyll bundler
-
Install dependencies:
bundle install
Start the development server with live reload:
pnpm run devThe site will be available at http://localhost:4000
Thumbnails are auto-generated during CI — no local steps needed.
Cloudflare Pages:
Set your build command in the CF Pages dashboard to:
bash build.sh
Build output directory: _site
GitHub Pages:
Push to your repo — the included .github/workflows/pages.yml calls build.sh automatically.
pnpm run dev- Start development server with live reloadpnpm run build- Build the site for productionpnpm run serve- Start a simple server (without live reload)pnpm run clean- Clean the build directory and thumbnailspnpm run generate-thumbnails- Manually generate thumbnails (only needed for local testing)
Thumbnails are automatically generated during your CI build (GitHub Pages or Cloudflare Pages) when you push your changes. The build sets JEKYLL_ENV=production, which triggers the SVG thumbnail generator and converts them to PNG using rsvg-convert (installed via librsvg2-bin on the CI runner).
No local ImageMagick, no separate command, no manual steps.
If you want to preview thumbnails locally, you can run:
JEKYLL_ENV=production bundle exec jekyll build --config _config.yml,_config.thumbnails.ymlStart by adding thumb.png and favicon.ico to the assets folder. The favicon will be converted to PNG automatically.
Start by editing _config.yml to set your site's title, description, and other settings.
- Long-form writings: Create new files in
_writing/withlayout: postin the fontmater - Microblog posts: Create new files in
_microblog/withlayout: microin the fontmater - Requirements: All notes require a date fontmater. For example:
created: 2025-09-05. These options are avaliable and the date priority is: updated > created > published - Attachments: Add all attachments/image to
assets/attachments/, link them in the post with![[/attachments/{filename}]]syntax - Pages: Create HTML or Markdown files in the root directory
- Styles: Add CSS files to
assets/css/, randomize options are indefault.html - Layouts: Create new layouts in
_layouts/
- robots.txt and RSL standard to reject AI scraping/indexing
- PGP page to share your public key
- Two separate RSS feeds for long-form writings and microblog posts
- Multiple CSS styles, including a Minecraft theme
- Email button that acts as a "comment" button, linking to the current post