- HTML 50.3%
- SCSS 38.1%
- CSS 6.9%
- Python 4.7%
| .forgejo/workflows | ||
| archetypes | ||
| book-manager | ||
| content | ||
| data | ||
| layouts/shortcodes | ||
| static | ||
| themes/nightfall | ||
| .gitignore | ||
| .hugo_build.lock | ||
| hugo.toml | ||
| README.md | ||
Henkka Laukka Personal Website
A personal portfolio website built with Hugo and hosted at henkkalaukka.fi.
Overview
This repository contains the complete source code for a customized Hugo-based personal website featuring a blog, poetry gallery, and an interactive book tracker. The site is automatically built and deployed to Hetzner via CI/CD pipeline whenever changes are pushed to the main branch.
Tech Stack
- Static Site Generator: Hugo (Extended version)
- Base Theme: Nightfall (heavily customized)
- Styling: Dart Sass for SCSS compilation
- Deployment: GitHub Actions → FTP to Hetzner
- Book Management: Python Flask application
Features
📝 Blog
A custom blog section with personalized layout and styling for articles and posts.
🖼️ Poems Gallery
An interactive poetry gallery featuring:
- Responsive modal layout
- Mobile-optimized viewing experience
- Clean presentation of poems
📚 Book Tracker Gallery
A custom-built book tracking system displaying your reading history:
- Sleek gallery layout showcasing book covers
- Dynamically fetches book metadata from
/data/books.json - Ground-up custom implementation with custom styling and functionality
🎨 Custom Theme Modifications
The base Nightfall theme has been extensively modified with custom layouts, components, and styling to match the personal branding and feature requirements.
Project Structure
├── .github/workflows # github actions deployment
├── archetypes/ # Page archetypes for hugo
├── content/ # Markdown source files for all pages
├── data/ # books.json file for book tracker data
├── layouts/ # Custom Hugo templates
├── static/ # Static assets
│ └── blogi/ # Blog images
│ └── books/ # Book cover images
│ └── lyhkarit/ # Book "review" images
│ └── screenshots/ # Blog screenshot images
├── themes/ # Hugo themes (Nightfall base)
└── book-manager/ # Python book management application
Book Manager
A Python-based management tool for maintaining your book collection:
Features
- Add new books to your collection
- Manage all book metadata and properties
- Web-based interface running on
localhost:5555 - Automatically updates
/data/books.json
Getting Started
- Install Python onto your machine (instructions elsewhere)
- Run the app with pythin app.py
- Access the interface at http://localhost:5555
- Use the UI to add and manage books
- Manual step: Add corresponding book cover images to /static/books/ directory