James Langridge

I'm a software engineer with an unorthodox, self-taught background. My superpower is over a decade of training and experience as a lawyer-linguist, during which I honed my skills in problem solving and natural languages, on my path to becoming a computer whisperer. With deep experience in TypeScript (React, Next.js), and some exposure to Rust and Angular, I've also written a good amount of C# recently. Right now, I'm enjoying experimenting with AI-Assisted software engineering.

James Langridge
Runner (1113 km this year)Juggler (5 balls)Poker (shark)

Selected Personal Projects

The following are some of the projects I build in my spare time as a solo developer. A mixture of SaaS products in production, and open source projects. For all my open source projects, see my GitHub.

SaaS Products

QuoteVault

Offline-first PWA that captures Kindle highlights with intelligent parsing, client-side full-text search, collaborative list sharing, and automated email reminders.

Next.js 16Offline-First PWAOrama SearchReact QueryFunctional ArchitectureIndexedDBPostgreSQL/PrismaTypeScript
getme.fit

Multi-tenant SaaS platform enabling personal trainers to manage clients, automate billing, and sync schedules with Google Calendar using OAuth integration and tax-ready revenue reporting.

Next.js 15Multi-tenant SaaSOAuth 2.0PostgreSQL/PrismaAutomated BillingGoogle Calendar APIServer ActionsTypeScript
Rain Or Shine

Strava integration that automatically enriches activities with customizable weather data using real-time webhooks and historical weather APIs.

TypeScriptNode.js/ExpressReact 19PostgreSQLWebhooksOAuth 2.0Strava APIWeather API

Open Source Projects

Mars Vista API

Production REST API serving 2 million Mars rover photos from all four NASA missions. Unifies fragmented NASA endpoints with 100% data preservation, two-level Redis caching, Mars time filtering, and location-based search.

C#/.NET 9PostgreSQL + JSONBRedis CachingEF CoreNASA APINext.js Dashboard
Strava SDK

TypeScript SDK for the Strava API with OAuth authentication, automatic token management, rate limiting, and webhook support.

TypeScriptStrava APIOAuth 2.0Rate LimitingWebhooksnpm PackageNode.js
Garmin Export Parser

TypeScript library that parses Garmin Connect ZIP exports into typed objects covering activities, wellness data, sleep sessions, and training metrics.

TypeScriptGarmin ConnectHealth DataFitness TrackingSleep Analysisnpm PackageType Safety