Discover movies through their trailers.
An infinite, personalised trailer feed that works like TikTok but for cinema.
teaserflix.vercel.app · Marabunta Labs · MIT License
TeaserFlix lets you scroll through movie trailers one at a time and decide instantly whether a film interests you. It remembers your reactions to surface more of what you like, and lets you save anything to a watchlist you can revisit later.
For users:
- Scroll through trailers without having to search for anything
- Tap like ❤️ or swipe right to bookmark 🔖
- Filter by streaming platform (Netflix, Prime, Max…) or genre
- Switch between Spanish and English at any time
- Share any trailer with a single tap
- Works on mobile and desktop
For developers:
- Clean Next.js App Router codebase with TypeScript and Tailwind v4
- On-device recommendation engine with no external ML dependency
- Supabase for auth, watchlist, and interaction persistence
- TMDB API for movie data
| Gesture | Action |
|---|---|
| Tap center | Play / Pause |
| Double tap | Like ❤️ |
| Tap left third | Seek back 10 s |
| Tap right third | Seek forward 10 s |
| Long press | 2× speed |
| Swipe right | Save to watchlist |
| Drag progress bar | Seek to position |
| Key | Action |
|---|---|
| ↑ / ↓ | Previous / next movie |
| Space | Play / Pause |
| ← / → | Seek ±10 s |
- Infinite scroll with snap — no pagination UI
- Variety algorithm mixing trending, popular, and genre-targeted content
- Real-time search with poster grid
- Platform and genre filters with active chips
- Movies without trailers silently removed from feed
- Cards preloaded in a configurable window (default ±2)
- Full cast, runtime, rating, overview
- Similar movies
- Watchlist CTA with auth guard
- Opens via tap on title/description in feed, or via
/?play={id}deep link
- Email/password sign-in, sign-up, and forgot password flow
- Google OAuth
- Guest mode — no account required; preferences and seen-movies persist in
localStorage - Personalised onboarding (genre + platform preferences)
- Accurate viewport height via
window.innerHeightCSS variable — no next-card peek on iOS Safari viewport-fit=cover+safe-area-inset-*for notch and Dynamic Island- Progress bar always visible above browser chrome
- Low Power Mode resilience (external pause syncs state; single tap resumes)
MIT © 2026 Marabunta Labs
Movie data provided by The Movie Database (TMDB). This product uses the TMDB API but is not endorsed or certified by TMDB. Trailers served via YouTube and subject to YouTube's Terms of Service.
