Simple real world platform for watching movies with built-in recommender
To install dependencies, run command
$ yarn (or npm install)
This project uses package config for project configuration.
Default configuration is showed in file config/default.json
.
To change configuration, create file config/local-development.json
and edit variables to your values.
More information about config package is here.
This project uses MySQL database and MongoDB (on Recommender API).
If you want to use PostgresSQL, change mysql2
dependency in package.json
to pg
.
Also change dialect
and port
in database config.
Example of database config:
"dbConfig": {
"dialect": "mysql",
"host": "localhost",
"port": 3306,
"name": "recommender",
"user": "root",
"password": "",
"synchronize": false
}
For downloading data about movies, the project uses OMDb API and TMDb API. Register for these two services and paste your API keys to you config file.
{
"omdbApiKey": "###key###",
"tmdbApiKey": "###key###"
}
This project uses movielens development dataset (9/2018). If you want to download latest version of this dataset, run command
yarn data:prepare
yarn db:prepare
yarn db:populate
This command will take some time. Also, you need to be registered at least on OMDb API which is used to download data about movies.
If you want to use recommender abilities, you need to download and install API first. With recommender API downloaded and running, run command
yarn recommender:train
to call and train API (it will take some time).
yarn server:dev
yarn server:start
yarn client:dev
yarn client:build
yarn client:start