Blog

Welcome to my blog, a place where I write about the things I’m building, learning, and figuring out along the way.

Most posts revolve around frontend development, design, creative side projects, and the occasional technical rabbit hole that feels too interesting not to document.

Some entries are practical write-ups, others are more like project journals, notes from experiments, or things I wish I had found in one place when I started.

If any of it helps, inspires, or simply makes you curious to try something yourself, even better.

A desk setup with VS Code and a Philips Hue lamp flashing as a status indicator for Codex.

Codex Hue Notifier – Turning My Desk Lamp into an AI Status Light

A tiny automation that connects Codex in VS Code with a Philips Hue lamp so my desk light flashes whenever Codex finishes a task.

A screenshot of my frontend developer portfolio homepage built with Astro.

How I Built My Frontend Developer Portfolio with Astro

A walkthrough of how I built my frontend developer portfolio with Astro, combining static performance, reusable content sections, image optimization, and a design-led UI.

Illustration of PasiLunch fetching and displaying restaurant menus in Slack and on a web dashboard.

PasiLunch – AI-Normalized Lunch Menus for Slack and the Web

A lunch menu service for Pasila that scrapes local restaurant menus, translates and normalizes them with Gemini, caches the result once per day, and serves it through both Slack and a web dashboard.

A sleek, modern NAS setup in a white Jonsbo N2 case.

Building a Home NAS with Unraid

A look at the hardware and software behind my home NAS, built with Unraid to handle media streaming, photo backups, and self-hosted services.

Illustration of a lunch table with various dishes, representing LunchBot project.

Building LunchBot: A Simple Slack Bot for Lunch Menus

A small Node.js project that scrapes restaurant menus and posts them to Slack so our team can quickly see what’s available for lunch.

A collection of book covers displayed on a digital screen.

Using the Google Books API for Book Covers in Astro

How I use the Google Books API to fetch book metadata and cover images for my Astro site, and why I later added local caching and build-time image optimization.

Pixoo display showing a chess rating.

Displaying My Chess.com Rating on a Pixoo Display

A small hardware project that fetches my Chess.com rating with Python and displays it on a Pixoo pixel display.

Spotify top tracks section displayed on a website

Building a Spotify Top Tracks Section for My Website

Building a Spotify-powered homepage section that fetches my top tracks, filters duplicate artists, and caches the results for a cleaner visual presentation.

Garmin watch face inspired by the VS Code editor interface.

A VS Code–Inspired Watch Face for Garmin Forerunner 55

Designing a custom Garmin watch face inspired by the Visual Studio Code interface using the Connect IQ SDK.