Conference website for PyCon Ireland 2026, 17 October at Trinity College Dublin.
- Hugo v0.161.1 (extended) — static site generator
- Tailwind CSS v4 — via Hugo's native
css.TailwindCSSpipe (no PostCSS or external build tools needed) - Inter — Google Fonts sans-serif typeface
- Vanilla JS — mobile menu toggle only, no frameworks
Hugo processes Tailwind CSS natively through its asset pipeline. The hugo_stats.json file (generated by Hugo's buildStats) tracks CSS class usage across templates, enabling Tailwind to tree-shake unused styles. CSS rendering is deferred via templates.Defer to ensure all classes are captured before processing.
- Hugo Extended >= 0.161.1
- Node.js >= 20
If you use mise, Hugo is configured in mise.toml.
npm install # install Tailwind CSS
hugo server # start dev server with live reloadOpen http://localhost:1313/ in your browser.
hugo --minifyOutput goes to public/. CSS is minified and fingerprinted automatically in production builds.
├── hugo.toml # Site config, menus, params
├── assets/css/main.css # Tailwind v4 entry + theme tokens
├── content/ # Markdown content pages
│ ├── _index.md # Homepage
│ ├── speakers/_index.md
│ ├── schedule/_index.md
│ ├── sponsors/_index.md
│ ├── venue/_index.md
│ ├── code-of-conduct/_index.md
│ └── blog/ # Blog posts
├── data/ # YAML data files
│ ├── speakers.yml # Speaker profiles
│ ├── sessions.yml # Talk details
│ ├── schedule.yml # Multi-track schedule grid
│ ├── sponsors.yml # Sponsor tiers
│ ├── team.yml # Organising team
│ └── site.yml # About section content
├── layouts/
│ ├── _default/ # Base and fallback templates
│ ├── partials/ # Reusable components (nav, footer, hero, etc.)
│ ├── speakers/list.html # Speakers grid page
│ ├── schedule/list.html # Schedule grid page
│ ├── sponsors/list.html # Sponsors page
│ ├── venue/list.html # Venue page
│ └── blog/ # Blog list and single templates
└── static/img/ # Images, logo, favicon
Speakers — edit data/speakers.yml. Set keynote: true for keynote speakers.
Sessions & Schedule — edit data/sessions.yml for talk details and data/schedule.yml for the timetable grid.
Sponsors — edit data/sponsors.yml. Sponsors are grouped by tier (Platinum, Gold, Silver, Community).
Blog posts — add a Markdown file in content/blog/:
---
title: "Post Title"
date: 2026-03-01
description: "Short description."
---
Post content here.Dark theme with Python brand colours as accents:
| Token | Colour | Usage |
|---|---|---|
py-blue |
#306998 |
Primary accent, buttons, links |
py-yellow |
#FFD43B |
Secondary accent, highlights |
bg-primary |
#0f1117 |
Page background |
bg-card |
#1a1d2e |
Card surfaces |
Theme tokens are defined in assets/css/main.css using Tailwind v4's @theme directive.