Matcha is a modern dating application built using Next.js, Express, and PostgreSQL, offering an engaging user experience with real-time functionality and personalized recommendations.
- User Authentication: Secure registration and login with email verification.
- Profile Customization: Add profile pictures, set interests, and update personal details.
- Geolocation-Based Matching: Matches are sorted by proximity using geolocation data.
- Filtering and Sorting: Filter matches by age gap, fame rate, mutual interests, and location.
- Real-Time Chat: Message matches with a Tinder-style chat interface powered by WebSockets.
- Interactive Swipe Feature: Swipe through potential matches with a limit of 10 at a time.
- Fame Rate System: Track user popularity, updated after meaningful conversations.
- Notifications: Real-time notifications for new messages, likes, and matches.
- Responsive Design: Fully optimized for desktop and mobile experiences.
- Frontend: Next.js, Redux for state management, Formik + Yup for forms and validation.
- Backend: Express.js, PostgreSQL, WebSockets for real-time communication.
- Other Integrations: Browser geolocation API, image uploads with custom processing, and structured API development.