Inspiration

Campus events are scattered across school sites, Instagram, and KakaoTalk rooms. Students miss activities and cross-campus friendships; organizers struggle to reach beyond their own university. Participation stays low and communities stay siloed. We built Eventory to fix discovery and coordination—end to end.

What it does

  • Map-first discovery of Seoul campus events with a clean list view fallback
  • Powerful filters: university, distance, time (today/this week), category, eligibility
  • One-tap RSVP that updates counts and can save to calendar
  • Per-event chat so attendees can coordinate details
  • Bilingual KR/EN UI throughout
  • Organizer tools: quick event creation, gallery, recurring sessions (scaffolded)

How we built it

  • Stack: Next.js (App Router) + TypeScript + Tailwind + shadcn/ui + lucide-react
  • Map adapter: Kakao when keys exist
  • Data layer: swappable interface → start with Mock Data Mode (seeded Seoul events, localStorage persistence); ready to flip to Firestore/Cosmos
  • i18n: lightweight dictionaries for KR/EN; persisted language toggle
  • State: event/RSVP/chat via React hooks; optimistic updates for a snappy UX

Challenges we ran into

  • API keys & judging environments: solved with a keyless Leaflet fallback
  • Race conditions in map SDK loading: fixed with a single-shot loader and deferred init
  • KR/EN parity: caught missing translation keys and strict JSON errors; added lint checks for i18n
  • State flicker (join/leave): centralized RSVP state to avoid double updates

Accomplishments that we’re proud of

  • A reliable, offline-demoable MVP (mock data + local persistence)
  • Bilingual experience across the entire flow
  • Smooth map → details → RSVP → chat journey that feels production-ready
  • Clean component system that’s easy to extend

What we learned

  • Abstracting the data layer early lets you move fast with mocks and swap to a real DB later
  • Build for fail-safe demos (keyless maps, local seeds) without sacrificing UX
  • Tight i18n discipline prevents runtime surprises
  • Small, testable utilities (filters/sort/recommend) keep complexity in check

What’s next for Eventory

  • Trust & safety: organizer verification (.ac.kr email), reporting, and moderation
  • Growth: “Follow university/club,” weekly digest, and a simple calendar importer
  • Engagement: points/coupons pilot with local cafés; recurring events UX
  • Scale: flip to Firestore/Cosmos/Supabase, expand beyond Seoul, and ship a PWA/mobile app

Built With

Share this project:

Updates