Skip to main content
Auto-memory
Retell + Twilio
MCP ecosystem
Founder Pres.
Obsidian + QMD
Review pass
Claude / Codex
Convex
75K+ sold
SwiftUI CloudKit
Next.js + Vercel
1,350+ locations
Shopify
Session notes
Founder
MCP forks
<60s response
Operator chapters
Founder & CEO
121+ skills
Six figures raised
Founder office
back to grid
Projects2026

Local Radar

A Boise-first personal event radar aggregating verified community events from municipal, venue, and arts sources. Built with Next.js 16, Drizzle, and PGlite.

Boise-first
pilot metro
PGlite
in-process database
Next.js 16
App Router
Drizzle
type-safe schema
§01The workThe product

A Boise-first personal event radar reconciling verified community happenings.

The productEvent feed with date filters and verified schedules. / Detail sheet with venue attribution and ticket details.
§02The pipelineEnd-to-end flow
01

Collect sources

Pulls public schedules directly from municipal sites, libraries, and independent venues.

official calendars
02

Reconcile facts

Merges duplicate listings and preserves unposted ticket prices rather than guessing.

deduplication
03

Filter relevance

Filters events by distance and household criteria like age limits and free admission.

radius and tags
04

Deliver feed

Renders a fast, responsive feed with direct links to primary venue pages.

Server Components
§03What I builtPieces that compound

The Next.js 16 application, Drizzle data model, and PGlite test harness.

Primary venue sources

Pulls event details straight from venue and municipal calendars to bypass social feed clutter.

direct feeds

Explicit unposted states

Marks missing prices or age limits as unposted instead of assuming free entry or inventing hours.

no invented facts

In-process PGlite harness

Runs isolated Postgres migrations and queries in milliseconds without external database credentials.

zero cloud dependency
§04Build rulesIntegrity · speed · clarity

Primary source verification and transparent data states.

Selected rulesNext.js 16 + Drizzle
  1. Prioritize official primary sources over third-party scrapers.
  2. Label unknown admission costs as price not posted rather than free.
  3. Never invent missing venue hours, ages, or accessibility details.
  4. Run integration test suites against fresh in-process PGlite databases.
§05StackEvery tool earns its line
Next.js 16 / App RouterDrizzle ORM / Database schemaPGlite / In-process databaseTypeScript / Application codeTailwind CSS / Styling tokens
§06ArtifactsReceipts and public proof

The web application, reconciliation engine, and test harness.

Local Radar web app

Next.js 16 event radar with feed, filter controls, and modal detail sheets.

web application
Event ingestion engine

Drizzle-backed reconciliation pipeline that aggregates public schedules and flags missing prices.

reconciliation pipeline
In-process test harness

Fast integration test harness running migrations and queries against fresh PGlite instances.

zero credential testing