📅 Data as of 1st September 2024
This project is an Anime Recommendation System that leverages a combination of content-based filtering and collaborative filtering to suggest anime based on user preferences. Built with Flask for the backend API and a sleek front end using Tailwind CSS and JavaScript. 🌟
- main.py: 🧠 Script for training the anime recommendation model and generating required data files.
- app.py: 🚀 Flask API providing endpoints for anime recommendations.
- index.html: 🌐 Front-end interface designed with Tailwind CSS and JavaScript.
- /: 📂 Directory containing the raw anime dataset used for model training.
- anime_dataset: 📊 Explore
anime_dataset_extended_final.csv
for insights! - .gitignore: 🗂️ Configuration to ignore generated files from version control.
Ensure you have the following installed:
- 🐍 Python 3.7+
- 📦 pip (Python package manager)
Run the following command to install the required Python libraries:
pip install -r requirements.txt
Start the Flask server with:
python app.py
The server will be live at http://127.0.0.1:5000
🌍
Open index.html
in your web browser to interact with the recommendation system. To avoid CORS issues, use a local HTTP server:
python -m http.server 8000
Then navigate to http://localhost:8000/index.html
in your browser. 🚀
- Preferred Genres: Enter genres like "Action, Adventure, Romance".
- Liked Anime Titles: Provide a list of anime you enjoyed, such as "Attack on Titan, Black Clover, Kimi no Todoke, Horimiya, Mashle, Vinland Saga, Berserk".
- Click Get Recommendations to see your personalized anime list! 🎉
Files generated during the model training process and ignored by version control (.gitignore
):
anime_model_data.csv
collab_sim.npy
tfidf_vectorizer.pkl
content_sim.npy
simulated_user_data.csv
- The Existing User recommendation feature is under maintenance. Please use the New User option.
- The app relies on the dataset in the
/
directory; model training is required before use.
- Fix the existing user recommendation functionality.
- Enhance dataset quality and filtering for more accurate results.
- Add features like user authentication and personalized profiles.
Contributions are welcome! Feel free to submit a Pull Request to Model Repo.
This project is licensed under the MIT License.
For any inquiries or support, please contact Harshit, reach out on Instagram, or visit leoncyriac.me 🌐.