Welcome to The MovieVerse - your digital compass to the cinematic universe. Created by Son Nguyen in 2023 and currently attracting more than 450,000 monthly users, this application is completely free-to-use, designed to serve as a bridge connecting movie enthusiasts with an extensive collection of films across various genres and periods. Dive into an ocean of narratives, where stories come to life, right at your fingertips with MovieVerse!
π Star this repository to show your support and stay updated on the latest features and enhancements. Feel free to contribute to the project, and let's build a vibrant community of movie lovers together π¬πΏ!
This app is currently available at movie-verse.com.
- User Interface
- Introduction
- Features & Usage
- Project Structure
- Deployment
- Technology Stack
- Getting Started
- Privacy Policy
- Terms of Service
- Contributing
- License
- Code of Conduct
- Security Policy
- Contact
- Special Note
The MovieVerse is an open-source, full-stack, and mobile-friendly application created with the vision of creating a seamless and enriching experience for movie lovers. It's more than just a database; it's a portal to explore, discover, and immerse yourself in the art of cinema.
Through The MovieVerse, users can search for movies, view detailed information, rate, and review films, and interact with a community of like-minded movie enthusiasts. It's a platform that celebrates cinema in all its forms, from blockbuster hits to indie gems.
- Search Functionality: Find movies or TV shows by title, actor, director, or genre in our comprehensive database with ease.
- Movie Details Page: View detailed information, including synopses, cast, crew, ratings, and reviews.
- Curated Lists: Access collections of new releases, most popular, trending, genre-specific movies, and many more.
- Cinematic Insights: Explore movie trivia, behind-the-scenes facts, and other interesting tidbits about your favorite films.
- Interactive Database: Rate movies, write reviews, and read opinions from other users.
- Movie Watch Lists: Create and manage watch lists for different genres, time periods, or preferences. The watchlists are saved to your account for easy access on any device.
- Movie Matching: Discover movies that align with your preferences and ratings.
- Live Translation: Translate movie information, reviews, and discussions into multiple languages for a global audience.
- MovieBot Chat: Engage with our chatbot, MovieBot, for additional information about the application.
- User Sign On: Create an account for a personalized experience with additional features like saving watchlists.
- Cinematic Timeline: Explore cinema history by selecting specific time periods in the movie timeline.
- User Profile: Customize your profile, manage your watch lists, and view your stats/information.
- Responsive Design: Enjoy a seamless experience on various devices and screen sizes. The MovieVerse is optimized for all platforms, including desktop, tablet, and mobile.
- Movie Recommendations: Receive suggestions based on your movie preferences and reviews with AI-powered recommendations.
- Statistics and Insights: Access dynamically updating, ML-powered statistics for a tailored experience on both desktop and mobile.
- Community Engagement: Connect with other users, create your profile, share your thoughts, rate movies, and engage in discussions about your favorite movies.
- Chat Feature: Chat with other users, share your thoughts, and discuss movies in real-time.
- Continuous Improvements: The platform is ever-evolving with regular updates and new features.
- Free to Use: The MovieVerse is completely free to use, with absolutely no hidden costs or subscriptions.
- Privacy & Security: The MovieVerse is committed to protecting your privacy and ensuring a secure platform.
And So Much More!
The MovieVerse is a full-stack application with a robust backend and a user-friendly frontend. The project is divided into the following 3 main directories:
MovieVerse-Backend
: The backend directory contains the server-side code, including the API, database, and server configuration.MovieVerse-Frontend
: The frontend directory contains the client-side code, including the user interface, user experience, and client configuration.MovieVerse-Mobile
: The mobile app directory contains the mobile application code, built using Apache Cordova, including the mobile user interface, user experience, and mobile client configuration.
There are also additional directories and files for project configuration, testing, and other utilities. The project is built using a variety of directories, including .github
, MovieVerse-Utilities
, MovieVerse-Config
, MovieVerse-Middleware
, MovieVerse-Design
, images
, and more. Each directory serves a specific purpose in the development, deployment, and maintenance of The MovieVerse application.
The current deployment and production branch is the main-deployment-branch and is being deployed to the official website at movie-verse.com. The deployment process involves building the frontend, backend, and mobile app, configuring the server, and deploying the application to the server. The deployment process is automated using CI/CD pipelines and scripts to ensure a seamless deployment experience.
The app is using Netlify for the frontend deployment and Heroku for the backend deployment. The deployment status is monitored regularly to ensure the application is up and running smoothly.
Frontend Technologies | Backend Technologies | Database Technologies | Mobile App Development | Additional Technologies |
---|---|---|---|---|
React | Node.js | MongoDB | Apache Cordova | Webpack |
Vue | Express | MySQL | React Native | Babel |
HTML5 | Django | Google Firebase | Swift (for iOS development) | Docker |
CSS3 | Django REST Framework | PostgreSQL | Kotlin (for Android) | Emscripten |
JavaScript | Flask | Redis | Java (for Android) | WebAssembly |
TypeScript | Python | Android Studio | Google Analytics | |
FontAwesome Icons | JavaScript | XCode | ESLint | |
SASS | RabbitMQ | TensorFlow |
To get started with The MovieVerse, follow these very simple steps:
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Install Emscripten and compile the C code to WebAssembly (refer to the README.md file in the
utilities
directory here.) - Take a look at the project configuration directory (project-config) and make sure that the paths are correct.
- Visit the root directory and install the dependencies (if any):
npm install
- Visit the backend directory and install the dependencies (if any):
cd MovieVerse-Backend pip install -r requirements.txt
- Start the backend servers and services (refer to the README.md file in the
MovieVerse-Backend
directory for more information). Or, for your convenience, you may simply run the following command, provided that you already have MySQL, PostgreSQL, Redis, MongoDB, and RabbitMQ running on your system:npm run backend
- Return to the root directory and start the development server:
This will start the deployment server, including the frontend, so you can start developing and testing your changes right away. If you make any changes, be sure to reload the web page to see the updates.
npm start
- If you would also like to develop the mobile app versions: Visit the mobile app directory and install the dependencies (if any):
cd MovieVerse-Mobile npm install cordova platform add ios cordova platform add android
- Start the mobile app using Cordova (visit the
MovieVerse-Mobile
directory for more information):cordova build cordova emulate ios cordova emulate android
- If you'd also like to dockerize the application, you can run the following command:
This will create a Docker image of the application, which you can then deploy to a containerized environment.
npm run docker
- As you develop, be sure to save & commit your changes (and don't forget to create a branch for your new feature):
git commit -m 'Add some AmazingFeature'
- Push to your branch:
git push origin feature/AmazingFeature
- Open a Pull Request (if you want to merge your changes to our official app!)
- Enjoy coding and let me know if you have any questions!
The MovieVerse is committed to protecting your privacy. Our Privacy Policy page explains how your personal information is collected, used, and disclosed by The MovieVerse. Feel free to visit our Privacy Policy page to learn more.
By accessing or using The MovieVerse, you agree to be bound by our Terms of Service.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Distributed under the Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0). See LICENSE.md for more information.
The MovieVerse is committed to fostering a welcoming community. Please refer to our Code of Conduct for more information.
The MovieVerse is committed to ensuring the security of the platform. Please refer to our Security Policy for more information.
Son Nguyen Hoang - @hoangsonww
Website: https://movie-verse.com
Email: Official MovieVerse Email
Please also note that the MovieVerse is an ever-evolving platform, and more updates are underway. I am continually enhancing the user experience and adding new features to help you navigate the vast sea of cinema with ease and excitement!
Additionally, I'd also like to express special gratitude to The Movie Database (TMDb) for providing additional movie data that greatly enriches The MovieVerse experience!
Thank you for your understanding and support~ π¬πΏ
Created with β€οΈ in 2023 by Son Nguyen. All rights reserved.