Everything I've built

At a glance

Project What it is Built with How to get it
Yo GVL Community event app React Native, Firebase App Store & Play
Snappled Video party game React Native, Firebase TestFlight / Play beta
Snappled TV Big-screen view of a game Vanilla JS, Firebase Open in browser
Tracker Timers, lists, tasks, tallies React Native, Firebase Direct APK download
stock-alerts Market screening toolkit Python, pandas Download the source
Yo GVL Web Web companion dashboard Next.js 15, TypeScript Open in browser
Snapples archive 2018โ€“19 components & cron backend React Native, Cloud Functions Reference only

On the stores

Reviewed, approved, and updated over the air.

๐Ÿ“ฑ

Yo GVL

Live ยท iOS & Android

Create an event, invite your people, see who's coming. A follow graph, interest matching, per-event message boards, and a notification for every thing that actually matters.

  • Full event lifecycle โ€” templates, co-hosts, guest lists, private events
  • 26 Cloud Functions covering every notification path
  • QR-code invites with verified universal links
  • Google & Apple sign-in, contacts and calendar integration
๐ŸŽฌ

Snappled

Closed beta

A prompt lands, you record ten seconds, the crowd votes and the votes decide the round. Saved clips stay in your collection; everything else disappears when its prompt expires.

  • In-app capture, compression and playback
  • Round engine split into prompt โ†’ record โ†’ vote โ†’ results
  • Custom lobbies, or solo practice against bots
  • Coins, tickets and topic tokens

Not on a store

โฑ๏ธ

Tracker

Direct download
  • Works fully offline; sign in only if you want shared lists
  • Timers store an absolute start time, so reboots don't lose them
  • Share a list by email; due dates can surface an item in another list
  • Push reminders
๐Ÿ“ˆ

stock-alerts

Open source

A screening toolkit that reads the levels a chart reader would mark by hand โ€” consolidation shelves, pivot lows, unfilled gaps, projected moving averages โ€” straight from raw OHLCV.

  • ~500 tickers, sector-rotation and market-regime reports
  • Confluence scoring โ€” levels several methods agree on rank higher
  • Auto-built four-rung entry ladders, spaced to each stock's volatility
  • Runs on free yfinance data; Alpaca optional

On the web

๐ŸŒ

Yo GVL Web

Live

The web companion to Yo GVL, running on the same Firestore database as the phone app โ€” so an event created on your laptop is on your phone before you close the tab.

  • Next.js 15 App Router, TypeScript, Tailwind v4
  • Server-rendered pages with interactive client islands
  • Admin tooling behind firebase-admin API routes
๐Ÿ“บ

Snappled TV

Live

Put a game on the big screen. Enter its four-character join code in any browser and that screen becomes another client watching the same game the phones are already playing.

  • Vanilla JS and the Firebase Web SDK โ€” 302 lines, no build step
  • Anonymous auth; the join code is what gates the game
  • Lays out by viewport width, not user agent โ€” TV, laptop or tablet

The archive

Where the house style came from. Kept for reference, not for install.

๐Ÿงฑ

Snapples components

2018 ยท Archive

Around 9,000 lines of React Native components written by hand before any of the modern tooling existed โ€” camera, cards, map, menus, game UI. Every app I ship today still traces its design system back to this folder.

โฐ

Snapples cloud functions

2019 ยท Archive

Firebase Cloud Functions plus an App Engine cron service running the original game's hourly loop โ€” topic rotation, pre-submission handling and quick-play matchmaking.