Project Info
Inspiration
Our team's shared love for movies inspired us to create MovieMatch. We often found it challenging to decide on a movie to watch together, so we wanted to build an app that could help us and others in similar situations.
What it does
MovieMatch allows users to create groups with friends, curate a list of favorite movies, and receive personalized movie recommendations based on the group's preferences.
How we built it
We built MovieMatch using React Native for the frontend to ensure cross-platform compatibility. For the backend, MovieMatch is powered by Convex, providing scalability and efficiency. We also integrated third-party APIs like IMDb using Postman for movie data and recommendations. Postman Workspace Link: link
Challenges we ran into
As it was our first time working with React Native, creating a full-stack, and integrating APIs, we faced a heap of challenges. Managing these learning curves while ensuring the app's functionality and performance was a significant challenge. Using services like Postman and Convex, tech that is built for ease-of-use and rapid development, helped us immensely.
Accomplishments we're proud of
We're proud of successfully implementing real-time syncing of group preferences and generating accurate movie recommendations. We also managed to create a user-friendly interface that made it easy for users to create groups and add movies to their lists. Getting past that first step of getting the stack to compile and subsequently building upon it was extremely rewarding.
What we learned
Through this project, we learned a lot about integrating third-party APIs, managing real-time data updates, and optimizing performance in a mobile app. We also improved our teamwork and communication skills, which were crucial for collaborating effectively in a fast-paced hackathon environment.
What's next
In the future, we plan to add more features to MovieMatch, such as user profiles, ratings, and reviews. We also want to enhance the recommendation algorithm to provide even more personalized suggestions based on individual user preferences. Additionally, we aim to improve the overall user experience by adding more interactive elements and refining the design.
Analysis
View
Metric
- 23
- 23
- 19
- 4
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- JavaScriptIn code
- ReactIn code
- TypeScriptIn code
3 of 3 appear in the indexed code.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
41 KB
Source files
20
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
CooperRoalson/MovieMatch
32 files · 1.0 MB · @ a493244
Structure
Interface
9 files · 28%Screens, components and styles rendered to the user.
Application logic
9 files · 28%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript73%
- TypeScript20%
- Markdown7%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 17- @expo/metro-runtime
- @react-navigation/bottom-tabs
- @react-navigation/native
- @types/react
- convex
- dotenv
- expo
- expo-status-bar
- react
- react-dom
- react-native
- react-native-dotenv
- react-native-get-random-values
- react-native-vector-icons
- react-native-web
- typescript
- +1 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.