What I work with
Most of my development work is in Svelte and TypeScript. I use them for CTV apps at work and for Chrono, then try other tools in my personal projects.
Languages I use
Main work: TypeScript, JavaScript, HTML and CSS / SCSS.
Personal projects: SQL, Rust and GDScript.
Exploring: A little Swift for Chrono’s macOS menu-bar interface.
Design & interactive websites
I enjoy designing screens, figuring out navigation and working on branding and visual identities.
I use code to try out design ideas. This portfolio is one place where I experiment with playful interactions.
CTV interfaces
I use Svelte and TypeScript to build screens, reusable components and navigation for a TV remote.
At Hypersolid, that includes interface redesigns and handling long presses on a remote.
Video playback
I work on playback controls and the differences between CTV platforms.
That includes preview thumbnails when seeking, playback analytics and links that open content on webOS and Android.
Desktop apps
I use Electron, Svelte and TypeScript to build Chrono, from its menus and prompts to local storage and calendar connections.
It’s a personal project for macOS and Windows, still in development.
APIs & data
I use APIs and local databases to work with calendars, time entries and music metadata.
Chrono reads Outlook meetings and sends reviewed time entries to Productive. Record Room uses music metadata.
Tools & games
I’m experimenting with pixel-art tools and game systems, including inventories, crafting and saved worlds.
PixelRef Studio and Together Untethered are personal projects I’m still developing.
Currently learning
In my personal projects, I’m learning more about game development and pixel art.
For work, I’m exploring spec-driven development and ways to plan and build software with AI coding agents.