James Langridge
I'm a self-taught software engineer with an unorthodox background: over a decade as a lawyer-linguist first, where I sharpened the problem-solving and precision I now bring to code. I work in depth with TypeScript (React, Next.js) and Node, and I've written a good amount of C# and Angular over the last couple of years. The projects below aren't demos; they're live, and real people use them.

Selected Personal Projects
A production REST API serving 1.5M+ NASA rover photos across four missions, with Redis caching and a searchable frontend. Handles ~174K requests/month from frontend users and 76 API users at ~40ms average response (151ms P95).
A Strava-approved app that adds the weather where you actually were — computed at the route's midpoint from your GPS data, not just the start. ~40 active users.
An open-source TypeScript SDK for the Strava API, extracted from Rain or Shine and published to npm (~880 downloads): typed client, OAuth, webhook management, pluggable token storage, and built-in rate limiting.
A multi-tenant SaaS for personal trainers. Google Calendar stays the schedule; TrainerLedger turns it into the billing ledger: read-only sync, client matching, monthly invoicing, and Stripe-billed self-serve signup, with tenant isolation enforced in the database via Postgres RLS.
Ebook RAG Chatbot
A retrieval-augmented chatbot over my ebook library — ask questions, get answers grounded in the actual text with source citations. Handles document ingestion, chunking, embeddings and vector search.