Skip to content
Labib Al Karim
← All work

Live at sigeptxkappa.com

SigEp Texas Kappa

The chapter's website and a paid registration system for its 40th Annual Golf Tournament, running without a server.

Role
Vice President & sole developer
Client
Sigma Phi Epsilon, Texas Kappa
Year
2026
Stack
JavaScript, HTML & CSS, Google Apps Script, Stripe Checkout, Google Sheets, Netlify
SigEp Texas Kappa homepage

The problem

The chapter needed a real web presence for recruitment, alumni, and philanthropy. It also needed to sell golfer spots, team foursomes, and sponsorships for its 40th Annual Golf Tournament.

The constraints were no budget for a server, no one to maintain one after I graduate, and a treasurer who already runs everything out of Google Sheets.

What I built

  • A multi-page chapter site covering the executive and alumni boards, philanthropy, the golf and tri-state tournaments, and contact.
  • A registration flow with three tiers: an individual golfer, a team of four, and a $1,500 sponsorship that includes a foursome. The form adapts to the tier selected.
  • Stripe Checkout payments with a confirmation page, and every paid registration lands in the chapter's Google Sheet.

Engineering decisions

A serverless backend the chapter already owns

Google Apps Script creates Stripe Checkout Sessions and writes to Sheets. There's no server to host or patch, and future officers manage registrations in a tool they already know.

The browser never sets the price

Prices are defined only on the backend, and the Stripe secret key lives in Script Properties. A tampered form can't change what someone pays.

Reconciling people who close the tab

A trigger runs every five minutes and confirms any pending registration that Stripe marked as paid. Payment still counts if someone pays and closes the tab before the confirmation page loads.

Drafts survive a cancelled checkout

Form answers persist locally, so backing out of Stripe doesn't make someone retype their whole foursome.

Golf tournament registration page

Outcome

Before launch, I verified the flow end to end with a real $1 charge, then restored production pricing. The site auto-deploys from GitHub to Netlify.

Next project

Freedom Township