Skip to Content
Back to Projects
Offline-First · AWS SAM

CheckinPulse: Offline-First Event Check-In PWA

Building an offline-first check-in application with client-side synchronization and zero data loss.

Technologies Used

React.jsIndexedDBAWS SAMDockerTypeScript

Scope & Context

Founding Engineer project targeting high concurrency, real-time sync, or custom system designs.

Codebase Link

Private repo · Available on request

The Problem

Attendee check-in processes at live tech events require absolute real-time speed and reliability. Standard web apps break immediately when the venue's Wi-Fi drops or gets congested due to high client density.

If a connection is lost, check-in operations stall, leading to long queues. Any data written only on the client can easily be overwritten or lost if the browser tab is refreshed or closed.

The Solution & Architecture

I developed CheckinPulse, an offline-first PWA implementing client-side IndexedDB databases coupled with local transaction queues:

  • Offline Local Store: Used IndexedDB for persistent browser-based storage, allowing check-ins to be recorded locally instantly even when offline.
  • Sync Workers: Built synchronization service workers that monitor connection state (network online/offline events) and stream queued check-ins to backend AWS SAM lambda layers when connectivity is restored.
  • Conflict Resolution: Implemented conflict resolution policies (such as server timestamp precedence) to merge duplicate event state updates seamlessly.

Engineering Deep Dive

Under intermittent network flapping, check-in sync actions would double-submit or conflict, causing databases to register duplicate check-ins.

I resolved this by wrapping each check-in in a unique cryptographically signed transaction token on the client.

The AWS SAM sync workers use these tokens for idempotency checks, discarding any already-processed tokens at the API Gateway level to ensure absolute record integrity.

Quantifiable Metrics

1
Shipped the system to handle attendee registration across live events with zero data loss.
2
Synchronized client transactions under flappy connection cycles with 100% data consistency.
3
Maintained sub-100ms local check-in registration times regardless of offline state.
4
Integrated IndexedDB auto-vacuuming to restrict mobile browser memory footprint.

Visual Showcase

Screenshots, dashboard metrics, and recorded event videos proving the system running in real-time.

CheckinPulse offline PWA queue state displaying unsynced registration tokens.

CheckinPulse offline PWA queue state displaying unsynced registration tokens.

Live sync console monitoring AWS SAM worker activity and network latency.

Live sync console monitoring AWS SAM worker activity and network latency.