DuoWatch
Movie matching social app Tinder-style — swipe with friends, real-time matches via WebSocket and a custom recommendation engine.
Ever spent half an hour arguing about what to watch? DuoWatch fixes that. It works like Tinder but for movies and series: each user swipes independently — without seeing the other's choices — and when two friends both like the same title, the app creates a match and notifies them instantly. No negotiations, no spoilers.
Every movie or series has its own detail view: rating, release year, runtime, genres, synopsis and, when available, a direct link to the trailer. All data fetched in real time from the official TMDB API with its catalogue of over 1 million titles.
The interface is fully responsive — same seamless experience on desktop and mobile — with fluid swipe animations powered by Framer Motion.
Built from scratch as a full stack project with Next.js 15 (App Router) on the frontend and NestJS 10 on the backend, connected via REST API and real-time WebSocket (Socket.IO). PostgreSQL database managed with Prisma ORM, fully containerised with Docker Compose.
The recommendation engine is custom-built: it learns from swipes in real time, applies a ×1.5 boost to content similar to recent likes, and automatically excludes content similar to dislikes. The friend compatibility score uses Jaccard similarity over shared genres and interaction history. Auth implements JWT with 15-min access tokens, 7-day refresh tokens and automatic rotation on the client.
Real interface
Screenshots
Movie Swiping
Swipe right to like, left to skip — without seeing your friend's picks.
Movie Details
Rating, year, runtime, genres, synopsis and trailer link when available.
100% Responsive
Seamless experience across desktop and mobile, built with TailwindCSS.
More projects
You might also like
CoreGym POS
Desktop POS system for gyms — member management, memberships, POS with atomic checkout and real-time analytics. Fully offline, no cloud.
Local Reviews AI
Desktop app for local businesses — Google review management with automatic replies generated by local AI (Ollama), no API cost and no data sent to third parties.
Start Brawling
Android app using the Brawl Stars API — active events, character profiles with rarity, Star Powers and gadgets.