Pinners Conference — Event Tech Platform
Quick Overview
Project Deep Dive
Project Overview
Built at Onda as lead developer, I designed and delivered a four-component event technology platform for the Pinners Conference — an annual multi-city consumer crafts, cooking, and shopping event run by Bennett Events. The platform replaced a legacy vendor system with a unified Shopify-powered stack handling ticketing, class registration, on-site check-in, and operational reporting.
The Challenge
Pinners Conference operates at a complexity level that standard ticketing platforms cannot handle. The event runs across multiple U.S. cities, each with its own ticket types, class roster, capacity limits, kit add-ons, and schedule. There was no unified system connecting ticket purchase to class registration to on-site check-in — class capacity wasn't enforced, check-in relied on manual list lookups, and the website lived on a vendor-locked platform with no content ownership.
Solution
Shopify Theme (Horizon Fork)
Deeply customized Shopify Horizon theme using Metaobjects as a structured CMS layer for event cities. Built a custom JavaScript state machine (ClassRegistrationManager) managing all registration interactions, constraint display, kit locking, and API communication. Features include city-switching cart management, time-slot filtering with scroll-spy, kit purchase flows with liability waivers, and QR code display — all with branded notification modals.
Gadget Backend App
The central nervous system of the platform. Handles the full ticket lifecycle: order webhook processing with three-layer idempotency, QR code generation and CDN upload, eight-step class registration validation (capacity, time conflicts, day/class limits, kit locking), walk-in registration, and order cancellation cascades. Includes a web-based check-in portal and a React Router admin dashboard with registration reports, class counts, CSV exports, and payout breakdowns.
iOS Check-In App (SwiftUI)
Native iPad app built in 3 weeks with a local-first SQLite architecture guaranteeing sub-500ms scan performance regardless of network. Supports gate entry mode (auto check-in with color-coded overlays) and classroom mode (per-class attendance tracking, walk-in registration, kit status display). Delta sync keeps data fresh without full re-downloads.
Meta-Sync CLI
Internal Node.js tool for bulk-syncing Shopify Metaobjects between store environments — used to replicate city configurations and class structures between development and production.
Business Impact
Event Success: ~5,000 attendees processed across gate entry and ~10 classrooms with real-time capacity tracking Operational Efficiency: Self-service admin dashboard replaced manual reporting; new cities deploy in minutes via Metaobject entry Reliability: Three-layer webhook idempotency, race condition guards, and hourly reconciliation ensured zero duplicate tickets at scale Platform Scalability: Architecture ready for Colorado 2026, Kansas City 2027, and beyond with minimal configuration
Built at Onda as the primary developer across all four repositories, serving as the direct technical contact for the client team throughout the six-month engagement.
Technologies
Challenges & Solutions
- Built four-component event platform — Shopify theme, Gadget backend app, native iOS check-in app, and CLI sync tool
- Solved Shopify webhook concurrency with three-layer idempotency (tag check, mutex tag, DB unique constraint)
- Designed local-first iOS architecture with SQLite and delta sync for reliable scanning under variable network conditions
- Implemented eight-step class registration validation handling capacity, time conflicts, day limits, and kit locking
Results & Impact
- Successfully processed ~5,000 attendees at St. George, Utah across gate and classroom check-in
- iOS app delivered in 3 weeks — from first commit to TestFlight distribution on all event iPads
- Multi-city architecture enables new cities via a single Metaobject entry and page template
- Platform handles ticketing, class registration, QR codes, walk-ins, and real-time attendance in one unified system