# Matchmaking App A modern matchmaking application for meaningful connections — built with React 18, Vite, TanStack Router, and Base UI. Designed for real-time conversations, profile-based discovery, and intelligent preference matching. > Replace the name, description, and domain throughout this file before deploying. ## About This is a progressive web application for matchmaking and social connections. Users can create rich profiles, discover compatible people, match, and chat in real time. The platform is mobile-first, accessible (WCAG 2.1 AA), and supports dark mode. ## Key Features - **Profile creation** — Photos, bio, interests, and preference setup during onboarding - **Discovery** — Swipe-style or card-based browsing filtered by distance, age, and interests - **Matching** — Mutual opt-in matching system; matches unlock real-time messaging - **Real-time chat** — WebSocket-powered messaging with typing indicators and read receipts - **Notifications** — Push and in-app notifications for matches, messages, and activity - **Settings** — Privacy controls, discovery preferences, notification management - **Dark mode** — Full system-aware and manual dark/light theme support ## Target Audience Adults (18+) seeking meaningful relationships or friendships. The platform emphasises safety, authenticity, and user control over visibility. ## Technology Stack - **Frontend**: React 18, TypeScript, Vite, TanStack Router, TanStack Query - **UI primitives**: Base UI 1.3.0 (unstyled, accessible) - **Styling**: Tailwind CSS 3, CSS variables for theming - **Real-time**: Native WebSocket client with auto-reconnect - **Forms**: Base UI Form + Field + Fieldset with constraint validation - **Design system**: Atomic design (Atoms → Molecules → Organisms → Templates) ## Public Pages - [Home / Landing](https://your-domain.com/) — App overview and sign-up CTA - [Login](https://your-domain.com/login) — Phone OTP or OAuth authentication - [Onboarding](https://your-domain.com/onboarding) — First-time profile setup ## Authenticated App Sections These routes require authentication and are not indexed: - `/` — Home feed and daily suggestions - `/discovery` — Browse and filter profiles - `/matches` — All mutual matches - `/messages` — Real-time conversations - `/profile` — Your profile view and edit - `/notifications` — Activity and match alerts - `/settings` — Preferences and privacy ## Accessibility - Full keyboard navigation - Screen reader tested (NVDA, VoiceOver) - WCAG 2.1 AA colour contrast - ARIA labels on all interactive elements - Reduced-motion support ## Privacy and Safety - Profiles visible only to matched or discovery-opted users - Phone verification required at sign-up - Block and report functionality on every profile - Location shared only as approximate distance (never exact coordinates) ## Contact and Legal - Privacy Policy: https://your-domain.com/privacy - Terms of Service: https://your-domain.com/terms - Support: https://your-domain.com/support