Daily Film

Solo DeveloperFall 2025React · TypeScript · Vite · Tailwind · Framer Motion

Product Design, Frontend Development, API Integration

Visit Site

The antidote to algorithmic fatigue. Instead of a hundred choices, just one film worth watching today.

Netflix's homepage has over 75 recommendation slots. Spotify generates 6 personalized playlists daily. The more precise the algorithms, the more choices users face, the harder it becomes to decide — the 'paradox of choice.' Daily Film takes the opposite approach: one film per day, selected by a deterministic algorithm that ensures every user worldwide sees the same recommendation, transforming 'what should I watch?' anxiety into 'what's today's film?' anticipation.

01

Daily Recommendation Algorithm

No backend database. No user behavior data. Uses the date as a random seed to deterministically select from TMDB's high-rated film library. Every user worldwide opens the site and sees the same film — a true 'everyone's watching this today' experience.

Implementation: date string → hash function → film library index. Algorithm runs entirely client-side, zero server cost.

Daily Recommendation Algorithm
02

Film Detail Page

Information Dossier-style detail page. Instead of a traditional film introduction, each film is presented as an 'intelligence dossier' — structured around basic info, financial data, and cast/crew, with data fetched in real-time from the TMDB API.

Uses Stale-While-Revalidate strategy for page navigation, eliminating the white-screen flash typical of SPAs during page transitions.

Film Detail Page
03

Social Share Poster

One-click high-fidelity share poster generation. Film poster + rating + date info auto-composed, rendered to image via Canvas API, supporting direct save-to-camera-roll or social sharing.

Canvas engine handles image cropping, text layout, gradient masks, and brand watermarks automatically — no backend image service needed.

Social Share Poster
Cross-device showcase

Deterministic Recommendation

Pure client-side algorithm using date as seed. No backend needed, zero operational cost.

SWR Navigation

Stale-While-Revalidate strategy. Zero white-screen on page transitions, smart cache expiry.

Canvas Poster Engine

Client-side image composition engine. Auto-layout rendering with one-click save and share.

TMDB API

Real-time film metadata, posters, and cast info. Local caching for faster responses.

PWA Support

Progressive Web App. Installable to home screen, offline access for cached content.

Framer Motion

Smooth page transitions and micro-interactions for a premium browsing feel.

The biggest takeaway: 'less is more' isn't just a design principle — it's a product decision. Cutting search, cutting favorites, cutting personalized recommendations — each subtraction is harder than any addition, because you need enough confidence in your core experience.

The most interesting technical challenge was designing the deterministic recommendation algorithm. Most recommendation systems pursue personalization, but Daily Film does the opposite: everyone sees the same film, creating a 'shared experience.' This single decision shaped everything — from 'today's film' to the social share poster.

If continuing iteration: add a 'past picks' calendar view for missed recommendations; explore a 'film diary' feature to track viewing history.


//