~/projects/tigh-sauna
The new Tigh wordmark beside the brass ribbon sculpture from tighsauna.com, on evergreen

2026 – Present

Operations & Growth solutions for Saunas

role: Co-Founder, Engineering

  • Every site and system is built bespoke in collaboration with saunas.
  • Built to be the last software your sauna needs, helping you run the day-to-day and bring guests back.

--next.js--typescript--fastify--postgresql--supabase--shopify--railway--vercel

~/projects/presterly
The Presterly logo mark

2026

Predictive reorder messaging for Shopify brands. SMS and WhatsApp, one-tap checkout.

role: Co-Founder & CTO

  • 34 stores, 423,000 customers, nearly €19M of order history analysed.
  • Wound down in August 2026.

--typescript--react-router-7--prisma--postgresql--shopify--klaviyo--twilio--railway

~/projects/loira
The Loira AI logo mark, a looping letter L

Feb – Jun 2026

AI project management. Turns what gets said in meetings into tracked work.

role: Founding Engineer

  • Founding engineer in Stockholm. I built the pipeline that reads the meeting and files the work.

--typescript--next.js--fastify--bullmq--postgresql--redis--llms

~/projects/remand
Remand illustration: Reddit questions about lost notes and chasing updates converge on a positioning idea, Handover without the chase

HackEurope 2026

Finds the market demand hiding in online noise.

role: Full-stack / AI

  • Semantic search over scattered discussion, with an agent that turns the signal into positioning.

--next.js--react-19--fastapi--supabase--pgvector--openai--anthropic

~/projects/under-the-campanile
Gameplay screenshot: Trinity College Front Square at night, the Campanile lit by a lamppost

TCD × Qualcomm

A dungeon crawler under Trinity's Campanile.

role: Shaders & Lighting Engineer

  • I wrote the lighting: dynamic lights, shadow casting, custom GLSL.
  • Team of 8, mentored by a Qualcomm graphics engineer.

--typescript--phaser-3--glsl--webgl

~/projects/contrabot
Illustration: candlesticks falling while a crowd-sentiment line climbs against them

A trading bot that fades the crowd.

role: Personal project

  • Reads Reddit sentiment with Claude, inverts it, paper trades through Alpaca.

--python--anthropic-api--alpaca