CLAUDE.md
# MeetLocal
Social meetup app. React Native
frontend, AWS serverless backend.
## Tech Stack
- Mobile: React Native (Expo), TS
- Backend: Lambda Node.js 20
- Data: DynamoDB, Aurora PG, Redis
- Auth: Cognito (Google, Apple)
- Realtime: AppSync subscriptions
- IaC: AWS CDK v2
## Commands
cd mobile && npx expo start
cd services && npm test
cd infra && npx cdk deploy --all
## Conventions
- Handlers: [entity]-[action].handler.ts
- Responses: { data, error, metadata }
- DynamoDB single-table design
- Zod schemas colocated w/ handlers
- No any types. Strict TypeScript.
## Architecture
- Redis GEOSEARCH for proximity
- AppSync subs for live attendees
- SQS + Lambda for push via SNS
.kiro/specs/event-discovery/requirements.md
# Requirements: Event Discovery
## Req 1: Browse nearby events
User Story: As a user, I want to
browse events near my location, so
I can find activities nearby.
Acceptance Criteria (EARS):
1. WHEN user opens Discover tab
THEN system SHALL display events
within 25km sorted by proximity
2. WHEN location unavailable THEN
system SHALL prompt manual entry
3. WHILE events load the system
SHALL display skeleton cards
## Req 2: RSVP to an event
User Story: As a user, I want to
RSVP so organizers know I'll attend.
Acceptance Criteria (EARS):
1. WHEN user taps "Join" THEN
system SHALL record RSVP and
update attendee count in real time
2. IF event at capacity THEN
system SHALL add to waitlist
3. WHEN user RSVPs THEN system
SHALL schedule push 24h before