← Case Studies
The Sports Bar Co. icon

The Sports Bar Co.

A full-stack reservations and events platform for sports bars - live scores across seven leagues, table booking, a live events calendar, and a party inquiry form. Built for owners who want a custom web presence without paying OpenTable's per-cover fees or being locked into a generic site builder.

HTML · CSS · JavaScript · Node.js · Express · Supabase · Resend · Vercel · webplatform-api
Role
Solo build - spec
Live data
7 leagues via ESPN API
Features
Table booking + events calendar
Model
No per-cover fees

The Problem

Sports bars run on events - game days, watch parties, private buyouts - but most manage reservations by phone and promote events through Instagram stories that disappear after 24 hours. OpenTable charges a per-cover fee on every booking and isn't built for the event-driven nature of sports bars. Generic site builders handle neither reservations nor events well, and leave the owner dependent on a platform they don't control. The goal was a custom site that makes reservations and events first-class features - one the owner controls completely, with no monthly platform fee and no commission per booking.

Try It

the-sports-bar.vercel.app

Previewing at tablet width. Open the full site ↗ for the desktop experience. Also fully optimized for mobile.

You're on mobile - open the full site ↗ for the best experience. Any display issues are caused by the embed, not the site itself.

Live Scores

Seven leagues - NFL, MLB, NBA, NHL, CFB, CBB, and MLS - pulled live from ESPN's official API. The "What's On" board shows how many games are live right now, how many are coming up today, and a live countdown to the next tip-off. Guests can filter by day (up to 7 days ahead) and by sport. The board pulls fresh data on every load with no page refresh needed.

Live scores board - seven leagues, game times, and day filter

What's Live Today

The homepage surfaces what's happening at the bar right now - games currently on, upcoming tip-offs, and the day's full schedule at a glance. Built to give guests a reason to check the site before they show up.

What's live today - homepage game board

Happy Hour & Events

A live countdown to happy hour and a weekly events calendar pulled from Supabase - so the site always reflects what's actually happening at the bar that week. Recurring events (Trivia Night, Wing Night) always appear; one-off events like playoff watch parties or live acts drop off automatically the day after they pass. Private party and buyout inquiries come through a dedicated form routed straight to the owner's inbox - no lead sits unread in a platform dashboard.

Happy hour countdown and weekly events calendar

Menu

The full menu with client-side category filtering - guests can browse by section without a page reload.

Menu with category filters and sorting

Mobile Experience

9:41

Client

Technical Implementation

Reservation Flow

Table reservations use a date/time/party-size form that validates required fields before writing the booking to Supabase. On confirmation, Resend fires a transactional email to the guest with their booking details. The owner sees all incoming reservations in the database without needing to check a third-party platform or pay a per-cover fee. Reservation data stays in a Supabase table the owner controls outright.

Events Calendar

The events page fetches live from a Supabase table via the webplatform-api. Recurring events (Happy Hour, Trivia Night, Wing Night) have no date and always appear. One-off events - a watch party for a specific playoff game, a live act on a specific Saturday - include a date and are automatically dropped from the public page the day after they pass. The owner adds or cancels events directly in the database, no code required.

Party & Buyout Inquiries

Private party and buyout leads come through a dedicated inquiry form separate from the table reservation flow. Submissions are written to Supabase and simultaneously routed to the owner's inbox via Resend, so no lead sits unread in a platform dashboard the owner has to remember to check.

Menu & Games

The menu page uses client-side filtering - all menu data loads into the DOM once, so category filtering is instant with no additional API call. The games page pulls from four live sports data sources covering seven leagues: the NBA CDN, the NHL API, the MLB StatsAPI, and the ESPN scoreboard API for NFL, MLS, CFB, and CBB. The webplatform-api normalizes all responses into a single unified format, so the frontend works the same regardless of which sport is in-season. For sports currently in their offseason, the page displays a dedicated banner with the most recent champion pulled from The Sports DB - so the schedule is never blank, and the page stays informative year-round.

Frontend Architecture

The frontend is built in vanilla HTML, CSS, and JavaScript with no framework. All dynamic features - live game scores, event listings, reservation submissions, the open/closed badge, and the happy hour countdown - connect to the webplatform-api, a shared multi-tenant Express backend also built for this suite. The sports bar routes run alongside bakery, inn, salon, and wellness routes on a single deployed API, with platform-level routes registered before tenant middleware so they resolve without a domain lookup. CSS custom properties handle theming; the mobile nav includes a backdrop-filter workaround to ensure the overlay covers the full viewport consistently across Chrome and Safari.

SEO

Schema.org BarOrPub JSON-LD structured data on the homepage with full address, hours, contact details, cuisine, and founding date. Verified passing in Google's Rich Results Test.

The Outcome

A sports bar web presence that handles reservations, promotes events, and captures private party leads - all in one place, at a fraction of what off-the-shelf reservation platforms charge. The owner controls everything: add an event, update the menu, check incoming bookings - no developer required and no monthly platform fee. Designed and built solo. Part of the Small Business Platform Suite.

Link Preview

The Sports Bar Co. link preview image
the-sports-bar.vercel.app

Sports Bar & Kitchen | The Sports Bar Co.

Three floors, 48 screens, and a kitchen open until midnight. The Sports Bar Co. - your neighborhood sports bar and kitchen since 1994.

Need a website for your business? I take on select freelance web projects.

Let's talk →