/matcha

Primary LanguageTypeScript

Matcha - A Full-Stack Dating App

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.

Features

  • 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.

Tech Stack

  • 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.