Hi, I'm Jon Ruddell

Software engineer building real-time video, high-scale backends, and side projects.

Most recently a Senior Principal Engineer in Vimeo's Office of the CTO. These days I'm building side projects — lake-sports tools, computational-photography timelapses, and hardware tinkering — and figuring out what's next.

Projects & demos

Booray Cards

iOSAndroidWeb

A full cross-platform app — iOS, Android, and web — for playing and scoring the card game Booray. It's local-first: an on-device SQLite database keeps things instant offline and syncs to a Cloudflare Workers API, with user accounts and live pot and round tracking.

Built withReact Native · Expo · TypeScript · Drizzle ORM · SQLite · NativeWind · Clerk · Cloudflare Workers · Hono

Winona Lake Conditions

Web appWeather

A fully server-rendered Cloudflare Worker that turns live Open-Meteo forecasts into go / marginal / no-go scores for lake sports — eFoil, wakesurf, wakeboard, and water ski — on Winona Lake. Wind, gusts, rain, and daylight, with the forecast cache warmed on a schedule.

Built withCloudflare Workers · Hono · TypeScript · Workers KV · Cron Triggers · Open-Meteo API

Winona Lake Timelapses

AutomationVideo

An automated pipeline that captures the lake camera's RTSP stream and renders daily sunrise, sunset, and full-day timelapses on a schedule, then publishes them to a Cloudflare R2–backed gallery — hundreds of clips archived and growing every day.

Built withNode.js · FFmpeg · RTSP · Docker · Cron · Cloudflare R2 · Cloudflare Workers

Winona Lake, 2025

Computational photographyData viz

A computational-photography recap of a full year of sky over Winona Lake — roughly two million frames distilled into sun-locked timelapses, star trails, keograms, and 'weather-removed' median videos. A Python pipeline does the analysis; an Astro site presents it.

Built withPython · OpenCV · pvlib · PyTorch · FFmpeg · Astro · Cloudflare Workers

eFoil Sync Companion

MobileWebCLI

A cross-platform toolkit for eFoil ride logs, built on protocols reverse-engineered from the board's own wireless traffic. It pulls rides off the board over WiFi (MAVLink dataflash), parses them to JSON, and surfaces them in a web viewer and an Expo mobile app with an optional Cloudflare Workers sync backend.

Built withTypeScript · Node.js · Expo · React Native · Cloudflare Workers · MAVLink

Recent writing

View all posts →
·5 min read

JHipster React Native Demo

JHipster React Native is now available as a JHipster Blueprint. Previously known as ignite-jhipster, the latest version brings many changes and improvements to the developer experience. With full Expo support (including Web and PWAs), building and deploying the application is easier than ever.

Read more →
·3 min read

JHipster in a Mobile World

My talk from JHipster Conf 2 in Paris — a tour of JHipster's mobile generators (Ionic, React Native, and PWAs), how they stack up against the Angular and React web clients, and a live demo that takes a JHipster backend all the way to the App Store.

Read more →

Let's talk

Have a question, an idea, or just want to say hi? Drop me a message.

Contact me