Write2Watch: A Solo Journey into the World of AI-Powered Movie Recommendations
Inspiration
The idea for Write2Watch was sparked by my fascination with AI and its potential to revolutionize the way we consume content. I envisioned a tool that could understand a user's written input, analyze it, and recommend personalized movie choices. The challenge was to create a seamless user experience that would bridge the gap between human language and machine understanding.
Learning Curve
Building Write2Watch was a steep learning curve, but it was also a rewarding experience. I delved into the world of natural language processing, machine learning, and web development. I learned to leverage the power of libraries like React, TypeScript, and Express.js to create a robust and efficient application. I also gained hands-on experience with database management and API integrations.
The Build Process
Frontend Development:
- Framework: React and TypeScript for a strong foundation and type safety.
- UI: A simple, user-friendly interface to collect user input.
- API Integration: A frontend API to communicate with the backend and fetch movie recommendations.
Backend Development:
- Framework: Express.js for a lightweight and efficient backend.
- Database: DataStax VectorDB to store and query embeddings.
- API: An API to process user input, generate embeddings, and query the database for similar movies.
Challenges Faced
- Local Development vs. Extension: Initially, I attempted to build a Chrome extension. However, I encountered difficulties with local development and deployment. I shifted to a web application for easier accessibility and development.
- Data Persistence and Retrieval: I faced initial challenges in storing and retrieving data from the DataStax VectorDB. After some troubleshooting, I realized that the issue was related to data consistency and query optimization.
- Design and User Experience: As a primarily backend developer, designing the user interface was a new challenge. I focused on creating a minimalist and intuitive design, prioritizing functionality over aesthetics in the initial stages.
Key Takeaways
- Embrace the Learning Curve: Every project is an opportunity to learn and grow. Don't be afraid to experiment and make mistakes.
- Prioritize Functionality: When starting a project, focus on building a functional prototype. You can always iterate on the design and user experience later.
- Leverage the Power of Open-Source: Utilize open-source libraries and frameworks to accelerate development and build upon the work of others.
- Community and Collaboration: Seek help from online communities and mentors. Collaborating with others can provide valuable insights and support.
Conclusion
Write2Watch is a testament to the power of perseverance and the joy of building something from scratch. While it may not be a perfect product, it represents a significant step forward in my technical journey. I am excited to continue refining the app and exploring new possibilities in the field of AI-powered recommendation systems.
Built With
- axios
- css
- css3
- datastax
- express.js
- html5
- javascript
- react
- typescript
- vite

Log in or sign up for Devpost to join the conversation.