C.SWEENEYFULL STACK ENGINEER
Start a project

Work / 05 case studies

Case studies

A closer look at how I approach client work: the problem, the decisions behind the build, and the results that mattered to the business. Each study focuses on outcomes, not just screenshots.

Map-based event listing interface showing concerts and venues around Raleigh-Durham, North Carolina.01

Personal projectFull-Stack Web App

LocalEvents

Event listings for the Raleigh-Durham area were scattered across a dozen city and venue sites. I built LocalEvents, a full-stack aggregator that pulls listings from ticketing APIs and city calendars into one searchable, map-based feed with saved events, email/SMS digests, and a moderated edit workflow.

  • Go
  • PostgreSQL
  • TanStack Start
  • React
View case study →Visit live ↗
Clustered map of Raleigh showing thousands of historic sites, beside a filter panel for era, standing status, and designation.02

Personal projectCivic Data Platform

Open Raleigh

Raleigh's historic places were spread across separate preservation, National Register, and historic district datasets with no single public view. Open Raleigh is a map-first community archive of roughly 9,000 sites — including over 1,000 already demolished — with search, faceted filters, a moderated contribution workflow, and all of it republished under CC BY 4.0 through a documented public API.

  • TanStack Start
  • TypeScript
  • Cloudflare Workers
  • Neon Postgres
View case study →Visit live ↗
Painting contractor homepage with a fanned set of paint chips beside the headline, above a strip of six named colour swatches.03

Market Ready PaintingLocal SEO & Marketing

Market Ready Painting

A painting contractor working in Apex, NC since 1995 was invisible to search: the whole site was a client-rendered React SPA that served crawlers an empty div, and a hidden route collected customers' bank account and routing numbers through a third-party email service. I rebuilt it as a 25-page static Astro site on Cloudflare Workers with its own lead pipeline.

  • Astro
  • TypeScript
  • Cloudflare Workers
  • D1
View case study →Visit live ↗
Open WebUI model picker showing gemma4:26b (25.2B) and qwen3-coder:30b-a3b-q4_K_M (30.5B) loaded and ready to chat, with the Files workspace panel open alongside.04

Personal projectAI Research Infrastructure

ai.coltoncs.com

Most AI features on this site call a hosted API. ai.coltoncs.com is the opposite: a gated LLM and image-generation platform running entirely on a home PC I own and administer — two models served concurrently on a single RTX 3090, a chat interface, a ComfyUI image pipeline, and a Cloudflare Tunnel and Access policy that make it reachable from anywhere without opening a port.

  • Ollama
  • gemma4:26b
  • qwen3-coder:30b-a3b-q4_K_M
  • Open WebUI
View case study →Visit live ↗
Dashboard showing a concert poster next to its extracted lineup, dates, venue, and location.05

Personal projectAI-Powered Web App

PosterOCR

Concert and festival posters pack in a lineup, dates, venue, and location that aren't easy to search or save. PosterOCR turns a photo of a poster into structured, searchable event data using Claude's vision model, with caching to keep repeat lookups fast and cheap.

  • TanStack Start
  • TypeScript
  • Cloudflare Workers
  • Claude API
View case study →Visit live ↗