Skip to content

MyLists: Organize series, anime, movies, games, and books all in one place with features like total viewing time and follow your friends.

License

Notifications You must be signed in to change notification settings

Crossoufire/MyLists

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyLists

MyLists is your go-to platform for organizing your favorite series, anime, movies, games, and books. With a clean and user-friendly interface, it regroups the functionalities of multiple sites into one. MyLists integrates features such as total viewing time, comments, favorites, and more.

Live version here: https://mylists.info

contact: [email protected]

Key Features

  • Build your lists for all your series, anime, movies, games and books.
  • Level up your Profile and lists with the leveling systems, and climb up the Hall of Fame!
  • Get detailed statistics about your entertainment habits (time spent, number of episodes watched, preferred genres, rating distribution, etc...).
  • Stay informed about upcoming episodes in your series/anime, along with new movies.
  • Follow your friends and get updates on their lists.
  • Compare your lists with other users.
  • Notifications system.
  • And more to come!

Support Me

If you like this work, you can buy me a coffee!   "Buy Me A Coffee"


Backend Installation (Python - Flask)

Prerequisites

Steps

  1. Clone this repo and install the requirements using Poetry
git clone https://www.github.com/Crossoufire/MyLists.git
cd MyLists/backend
poetry install
  1. Set up the .flaskenv file
FLASK_APP=server.py
FLASK_ENV=< development | production >
  1. Create a .env file. See the config.py file for more details.
SECRET_KEY=<change-me>

MAIL_SERVER=<your-mail-server>
MAIL_PORT=<port>
MAIL_USE_TLS=<True|False>
MAIL_USE_SSL=<True|False>
MAIL_USERNAME=<[email protected]>
MAIL_PASSWORD=<password>

GOOGLE_CLIENT_ID=<google-client-id>
GOOGLE_CLIENT_SECRET=<google-secret>
GITHUB_CLIENT_ID=<github-client-id>
GITHUB_CLIENT_SECRET=<github-secret>

THEMOVIEDB_API_KEY=<themoviedb-api-key>
GOOGLE_BOOKS_API_KEY=<google-books-api-key>
CLIENT_IGDB=<igdb-client-id>
SECRET_IGDB=<igdb-secret>
IGDB_API_KEY=<igdb-api-key>
  1. Run the command poetry run python server.py inside the MyLists/backend folder. The backend will be served by default at localhost:5000.

Frontend Installation (Node - React)

Prerequisites

  • npm > 9.0
  • Node.js > 19.0
  • (optional) WSL2 recommended for Windows

Steps

  1. Clone this repo and install the requirements using npm
git clone https://www.github.com/Crossoufire/MyLists.git
cd MyLists/frontend
npm install
  1. Create the .env.development file for development (.env.production for production)
VITE_BASE_API_URL=http://localhost:5000
VITE_REGISTER_CALLBACK=http://localhost:3000/register_token
VITE_RESET_PASSWORD_CALLBACK=http://localhost:3000/reset_password
VITE_OAUTH2_CALLBACK=http://localhost:3000/oauth2/{provider}/callback
  1. Run the command npm run dev inside the MyLists/frontend folder. The frontend will be served by default at localhost:3000.