Inspiration
Choosing a movie can be surprisingly difficult. Traditional search works best when people already know what they want, but discovering something new often starts with a movie they already enjoy.
I wanted to create a different experience: one where a user can start with a familiar movie, discover related titles, and follow their interests through an interactive exploration journey.
What it does
TasteTrail AI is an interactive movie discovery application powered by Qloo's Search and Insights APIs.
Users can: Search for movies and select a matching title. Discover related movies using Qloo-powered recommendations. Explore a recommended movie to generate another recommendation list. Build a discovery journey that records explored movies. Keep their journey across page refreshes using browser local storage. Clear their journey whenever they want to start again.
Rather than stopping at a single recommendation list, TasteTrail AI encourages users to continue exploring and discover where their interests lead.
How we built it
TasteTrail AI uses a lightweight client-server architecture.
Frontend: HTML, CSS, and JavaScript provide the search interface, recommendation cards, and interactive discovery journey.
Backend: Node.js and Express serve the application and handle API requests.
Discovery engine: Qloo's Search API helps users find movie entities, while its Insights API provides related recommendations.
Configuration and security: dotenv manages environment variables, and the Qloo API key stays on the server rather than being exposed in browser-side code.
Persistence: Browser local storage preserves the discovery journey across page refreshes.
Deployment: The application is hosted on Render.
The discovery workflow uses real Qloo API responses and user-selected movies to determine the next exploration step. It does not require a separate LLM API key.
Challenges we faced
One challenge was connecting movie search to the recommendation workflow while ensuring that the selected entity, rather than just the movie title, was used for subsequent requests.
We also worked on handling API errors, avoiding duplicate search results, keeping the interface responsive during requests, and preserving the discovery journey across refreshes.
Another important consideration was interpreting recommendation affinity correctly. Affinity is treated as a ranking signal, not as a probability that a user will enjoy a particular movie.
What we learned
Building TasteTrail AI reinforced the importance of designing around a complete user journey rather than a single API call. Search, recommendations, iterative exploration, error handling, persistence, and clear documentation all contribute to a usable product.
The project also demonstrates how an API-driven, tool-based discovery workflow can create an interactive experience without requiring a separate large language model.
What's next for TasteTrail AI
Future improvements could include richer explanations grounded in movie metadata, more personalized discovery controls, account-based history, and cross-device synchronization.
Built With
- css
- express.js
- html
- javascript
- node.js
- qloo
- render
- rest-api
Log in or sign up for Devpost to join the conversation.