Profile pictureLunasFIAE @ Herrenknecht
Sector 03

Projects

Selected builds and the problems I like solving.

A clearer look at the apps, experiments, and tools I’ve worked on or am actively shaping.

Start a conversationOpen links
Sector 03

Projects and builds

What I'm building and where each project stands.

P1

Website

Featured

Portfolio Platform

Personal portfolio with component architecture, motion, responsive layout, and section-based storytelling.

Next.jsTypeScriptCSS Modules
More about this build

This site - built to actually learn Next.js properly instead of just reading about it, and to have something online that's mine instead of a template. Everything runs on a BMW M / racing theme, down to the small stuff.

  • Hand-built BMW M livery theme and motion carried through every page, not just the homepage
  • Traced the real Nürburgring Nordschleife track geometry for the /experience timeline map
  • A couple of hidden easter eggs, including a launch-control sequence and a small race mini-game
P2

Build

In Progress

Pygame

Creating something like Mario to learn the library and refresh my python skills. It will be open sourced once it's in a presentable state.

PythonPygameGame Development
P3

Build

Live

Discord Bot

My own Discord bot for running a server: ticket system, audit log, welcome messages, moderation tools and a few minigames.

Pythondiscord.pySlash Commands
More about this build

One of my first projects, recently rebuilt from scratch. Every feature is its own cog that gets loaded automatically, so adding something new is just dropping a file into a folder.

  • Ticket panel with claim/close buttons - closed tickets get archived as a .txt transcript
  • Audit log for joins, leaves, deleted and edited messages, with a word-level diff for edits
  • Per-server settings via /config that survive restarts
  • Minigames like rock-paper-scissors, number guessing and a typing speed test that catches copy-paste
P4

Website

In Progress

Lunair

An invite-only photo feed for me and my friends to share pictures, thoughts and little stories from everyday life.

Next.jsTypeScriptPostgresDrizzleBetter AuthVercel Blob
More about this build

Started as a blog idea and turned into a small private social feed instead. There's no public sign-up - you only get in with an invite link, so it stays between friends. Posts can be a few photos or just text, and everything lands in one shared feed.

  • Invite-only login, with a profile picture, banner and a grid of your own posts on your profile
  • Posts with multiple photos or text only, all in one shared feed
  • Up to 3 reactions per post using your own custom stickers
  • Comments with replies and reactions on comments too
  • Photo carousel you can flip through on desktop, plus a fullscreen view with zoom
  • A shared pet called Luni that everyone feeds and pets together - with a streak that keeps going as long as someone looks after it each day
P5

Website

In Progress

Karteikarten App

A flashcard app for creating and studying digital flashcards. Built as a project during my studies at DHBW.

ReactNext.jsTypeScriptPostgresDrizzle
More about this build

A flashcard app for creating and studying your own cards - built as the practical project during my studies at DHBW, with a real Postgres/Drizzle backend behind it instead of just local state.

  • Card overview to create, edit, and delete your own flashcard sets
  • Self-study mode with a flip-card animation, progress saved per card
  • Login/register so cards and progress follow you across devices
P6

Website

Live

LUNAS OS

My personal HUD-style home dashboard for everyday life and vocational school: todos, appointments, timetable, grades, notes from Obsidian - and an animated Live2D character in the middle.

Next.jsTypeScriptTailwindDrizzlePostgresLive2DWeb Speech API
More about this build

Built for myself first, with my vocational school (Berufsschule) as the main use case. The start page is a one-pager: a Live2D character in the center, with the day's data orbiting around it as satellites. Everything school-related hangs off its Lernfeld. Single user, GitHub login only - which is also why the repo is private.

  • One-pager with a Live2D character that follows your cursor, surrounded by the day's data - countdown to the next exam, timetable, 14-day timeline
  • Greeting and a daily brief read aloud via the Web Speech API, plus adding todos by dictation
  • Notes pulled straight from my Obsidian vault, including wiki links, images and callouts
  • Achievements as a graph styled like Obsidian's graph view, drawn on canvas with d3-force
  • Weather for Offenburg, private file storage and per-subject pages with files, todos, appointments and a grade average
P7

Tool

In Progress

lunagraph

A code knowledge graph for Next.js/TypeScript projects, so Claude Code can look a project up instead of searching through it from scratch every time.

TypeScriptNode.jsSQLiteMCP
More about this build

A learning project. lunagraph indexes a project once into a SQLite file - who imports what, and later who calls what and which route touches which table. The end goal is an MCP server that lets Claude Code query all of it. LUNAS OS is the test project.

  • Phase 1 is done: files and imports get indexed, including the @/ alias and barrel files
  • Against LUNAS OS: 52 files and 228 import edges in under half a second, zero unresolved imports
  • Up next: symbols and calls, Next.js routes and Drizzle tables, then the MCP server
P8

Tool

Planned

lunaracing

A telemetry tracker for Le Mans Ultimate: record laps, store them and compare them afterwards - sector times, braking points, where I'm leaving time on the table.

Le Mans UltimateShared MemoryPostgresNext.js
More about this build

Up next. A small ingest service reads the live telemetry from LMU's shared memory, writes every lap to Postgres, and a Next.js frontend shows lap comparisons. It brings my sim racing hobby together with what I do at work: backend, data modelling and lots of writes.