All work
BetaSince 2025

LigaFam

Live scoring and streaming for amateur baseball leagues, built offline-first for real ballparks.

ligafam.netlify.app
LigaFam live scoring screen

Scroll to explore

LigaFam (working name) is a live-scoring and streaming platform for amateur and youth baseball leagues, built for the reality of a dugout with no reliable signal, not a demo on office wifi. Scorekeepers track every play, lineup, and substitution in real time; parents and fans follow along from anywhere.

The problem

Community baseball leagues run on paper scorebooks and group chats. There's no shared source of truth for lineups or live game state, and any app built assuming steady connectivity breaks the moment you're actually at a field.

The approach

Built as an offline-first PWA on Next.js and Supabase: local writes go to IndexedDB first and sync when connectivity returns, so scoring never blocks on signal. The same monorepo also houses a React Native companion app, web push notifications for real-time game alerts, and scheduled jobs for season upkeep. Features so far include full lineup management with one-player-per-position enforcement and position-history persistence, an attendance tracker, undo-last-play, foul-ball-aware pitch counting, and a compact live scoreboard.

Highlights

  • Offline-first architecture (IndexedDB + background sync) so scoring works with no signal at the field
  • Lineup and substitution system with position-conflict enforcement and undo support
  • Same monorepo also houses a React Native companion app, with web push notifications for real-time game alerts
  • Built bilingual from day one with next-intl, matching the leagues it serves

Other work

01

MontanoSystems

Web systems, automations, and product delivery for small businesses and nonprofits.

Next.jsSupabaseResendGA4 Data APIWordPress
Open for clients
02

Bulkify

A bulk diploma and certificate generator that pairs each person's photo with their row of CSV data automatically.

HTMLCSSJavaScript
Completed
03

Operational AI

An internal RAG search tool at Dawere, built with Vertex AI, that lets any employee search the company's operational manuals instantly.

Vertex AIGoogle CloudGoogle OAuthHTMLCSS
Completed
04

Hope for the Nations

Nonprofit site being rebuilt from WordPress into Next.js and Supabase, with Stripe donations.

Next.jsSupabaseStripeResendGoogle Apps Script
Client systems
05

School of Hope International

A bilingual education platform's custom site and blog, being rebuilt in Next.js with a full admin panel.

HTMLCSSJavaScriptSupabaseNext.js
Client systems
06

Reiniciar Sin Mapa / NEXT YOU

A full-stack admin system I built for my own Spanish-language coaching brand: bookings, payments, CRM, and content, all wired together.

Next.jsSupabaseStripeResendGA4
Community project