Projects

A collection of web apps, games, websites, and design work I have built across frontend development, product design, and creative tooling.

This overview stays compact so the page can grow. Each card links to a dedicated project page with the fuller write-up, image, stack, and live demo links where available.

Use the filters to narrow the list by project type.

PreFlight lock screen with neon corridor background

Apps

PreFlight — Your Morning Productivity Gatekeeper

Stop the distractions before they start. PreFlight is a blunt instrument for productivity: it blocks your desktop until your daily checklist is done.

React TypeScript Vite Three.js
Wolt Ratings order history dashboard

Apps

Wolt Ratings — Your Personal Food History Dashboard

Remember what was actually good. A local-first dashboard for rating Wolt orders, adding private notes, and tracking your tastes.

Python Flask JavaScript
Sententia quote display with full-screen background

Apps

Sententia — A Calm Home for Your Reading Highlights

Give your highlights a second home. A minimalist React app for browsing Supernote reading highlights on a clean, full-screen display.

React TypeScript Vite Express.js
FlipSite inventory and resale tracker

Apps

FlipSite — Resale Tracking Without the Spreadsheet Lies

Solve the "spreadsheet drift" problem for resellers. Handles complex bundle math and profit analytics with Supabase and React.

React TypeScript Tailwind Supabase Vite shadcn GSAP
HyperType neon arcade typing game

Games

HyperType — Arcade Typing for Survival

Typing practice doesn’t have to be admin work. Stay alive through enemy waves in this neon arcade typing loop built in Godot.

Godot
Marathon Control Center marathon training dashboard

Apps

Marathon Control Center — The Final Taper Dashboard

Stop the pre-race panic. A narrow, personal control panel for the final weeks of marathon training, built with React and Supabase.

React TypeScript Tailwind Supabase Vite
CTC Chess.com Trading Card app

Apps

CTC — The Chess.com Trading Card

Turn dry player stats into collectible fantasy-style cards. Features procedural art generation, AI-driven lore, and a robust Next.js backend.

Next.js React TypeScript Tailwind Three.js
PasiLunch website

Apps

PasiLunch — Taming the Chaos of Office Lunch

Aggregate messy Pasila lunch menus into a clean Slack command and API. Uses Gemini AI to parse even the most brittle restaurant sites.

HTML5 JavaScript CSS 3 Node.js Cheerio Express.js
Jurassic Jump Game

Games

Jurassic Jump — Claymation Platforming Adventures

From a hand-rolled JS prototype to a polished Godot platformer. Features tuned physics and a distinct claymation-inspired art style.

Godot
TalentAdore Mobile App UI

Design

TalentAdore — Designing the Mobile Recruiter Workflow

Deciding what survives the transition to mobile. A UX prototype for a complex recruitment SaaS, focusing on the essential 10-second tasks.

Adobe XD
Vollrath Drum Machine browser sequencer

Apps

Vollrath Drum Machine — A 16-Step Browser Classic

A tactile 16-step sequencer built for the browser. Focuses on immediate feedback, timing precision, and polished GSAP animations.

HTML5 JavaScript CSS 3 GSAP
Janne Heikkinen Website

Websites

Janne Heikkinen — Political Identity on the Web

Turning a political identity into a usable public website. Built with Gatsby and GraphQL for speed, clarity, and content flexibility.

React SASS JavaScript GraphQL Gatsby
Sushi-san Website

Websites

Sushi-san — A Lesson in Restrained Web Design

Answering the practical questions first. A minimalist restaurant website built with static HTML and CSS to ensure stability and speed.

HTML5 CSS 3
superVIMus Game

Games

superVIMus — Master the Movement Keys

Stop the awkward repetition of learning Vim keys. A puzzle game built in Godot that turns hjkl practice into a browser-playable challenge.

Godot