Featured
eink-dashboard
Hourly weather dashboard for an e-ink display. Renders a 480×800px greyscale PNG via headless Chromium and serves it from GCS at a UUID-masked URL.
tab-zap
Chrome extension that bulk-closes related tabs with one click. Groups open tabs by site so you can zap them when you're done.
grand-staff-quiz
Name notes on a grand staff. Three tiers targeting ledger-line boundary notes rendered with VexFlow.
Personal
voy.cz
Personal website, Berlin themed.
sayyato-booker
Automated class booking for a Berlin gym. Runs daily on GitHub Actions via Playwright (required to pass the server's TLS fingerprint check). Telegram notifications, Gist-backed skip list.
countdown-digest
Reads labeled dates from a Google Sheet and sends a weekly Telegram digest of how long it's been since (or until) each one. Google Apps Script, no server.
pinwand-patrol
Watches the class TaskCards pinboard and reports what the teacher changed — structural diff over the board's GraphQL API, summarized into a few German sentences by Claude and emailed to the parents. Runs as a Google Apps Script on a daily trigger.
muellmelder private repo
Photograph illegally dumped trash and it reports itself. An iOS Shortcut pushes the photo and its coordinates into a private repo; a GitHub Action classifies the waste with Claude, drafts the German Meldung and opens a PR. Merging it files the report with the Berlin Ordnungsamt — headless Playwright drives their wizard, spoofing the browser's location so the portal geocodes the address itself. Lives outside this repo because the photos carry GPS.
kid-border-papers
Interactive CLI that fills RegioJet powers of attorney for kids travelling between Berlin and Prague, from a local config — plus a German consent page for the border. One print-ready PDF.
Data
json-explorer
Paste JSON and explore it as a collapsible tree. Live parsing with type-colored values.
markdown-viewer
Paste Markdown and see it rendered live. Copy the output as HTML or back as Markdown.
eink-dashboard
Hourly weather dashboard for an e-ink display. Renders a 480×800px greyscale PNG via headless Chromium and serves it from GCS at a UUID-masked URL.
Music
jazz-chords
Flashcard quiz for jazz chord voicings from a Bill Evans "Portrait in Jazz" exercise. Reveals notes and explains the harmony theory behind each chord.
scales
Displays random major and minor scales with a visual piano keyboard. Made to help a kid study for a music test.
grand-staff-quiz
Name notes on a grand staff. Three tiers targeting ledger-line boundary notes rendered with VexFlow.
Extensions & Userscripts
open-google-maps-link
Chrome extension that adds a direct "Open in Google Maps" button to Google search results, working around the EU restriction that hides it.
close-tabs-ai
Chrome extension to filter and close open tabs using natural language queries.
tab-zap
Chrome extension that bulk-closes related tabs with one click. Groups open tabs by site so you can zap them when you're done.
jira-copy-issue-key
Chrome extension that adds a one-click "Copy Issue Key" button to Jira issue pages and board modals.
gh-jira-key-link
Chrome extension that turns Jira issue keys in GitHub PR titles into links to Miro's Jira.
Deprecated
marsei-stock-monitor
Watches MarSei Ceramics cup categories and sends a Telegram alert the moment anything restocks. Google Apps Script, no server.
schildkroete
Userscript that displays the mealplan panels on schildkroete-berlin.de side by side instead of stacked.
magenspiegel-watch
Watches arzt-direkt for a Magenspiegelung opening at a Berlin gastroenterology practice and auto-books the first one found. Runs every 15 minutes on GitHub Actions, plain HTTP (no browser needed), Telegram notifications, disables its own schedule once it succeeds.
Red Tint
Apply a red tint to a selected region of an image and download the result.
boxcrop
Crop images to a specific output resolution. Drag to position, drag corners to resize.