AliA
Convex Communityβ€’2mo ago
Ali

Built a clean movie/TV discovery app using Convex + Next.js 🎬

Hey everyone! πŸ‘‹
I’ve been working on a small side project called MediaFlix β€” a clean, minimal site to discover movies & TV shows. Sharing here because Convex powers the backend.

πŸ”§ Tech Stack

Convex (data + real-time)

Next.js 15 (App Router)

Clerk (auth)

TMDB API

TailwindCSS + shadcn/ui

Vercel hosting

⭐ Convex Features I’m Using

Watchlist system

Tables: watchlist, userProfiles

Indexes: by_user_id, by_user_and_media, by_username

Mutations: toggleWatchlist, clearWatchlist

Queries: isInWatchlist, getWatchlist, getWatchlistCounts

UI with useMutation, useQuery, usePaginatedQuery

Profile system

getUserProfile, upsertUserProfile

Username flow: isUsernameAvailable, updateUsername, generateUsername

Profile completion: markProfileComplete

Avatar uploads (Convex storage)

generateUploadUrl, getAvatarUrl, getFileUrl

Upload β†’ store URL β†’ save to profile

Auth integration (Convex + Clerk)

ConvexProviderWithClerk client setup

Server profile check via ConvexHttpClient

Gated pages using Authenticated & AuthLoading

Real-time updates

Watchlists and profiles sync instantly across devices out of the box

🎯 Live Site

https://mediaflix.digital

πŸ“¦ Open Source Repo

https://github.com/lukef7fywmrp/mediaflix

Would love feedback on my Convex schema, queries/mutations, or overall architecture! πŸ™Œ
A modern movie and TV show discovery app
GitHub
Contribute to lukef7fywmrp/mediaflix development by creating an account on GitHub.
GitHub - lukef7fywmrp/mediaflix
Was this page helpful?