Flask-based application using MySQL, MongoDB and Neo4j for storing video data and provides interface to search video and show related videos and recommendations.
-
Install python3, pip, python-virtualenv
sudo apt-get install python3 python3-pip pip3 install virtualenv -
Install databases : MySQL, MongoDB, Neo4j
- MySQL
sudo apt-get install mysql-client mysql-server libmysqlclient-dev - MongoDB
sudo apt-get install mongodb - GUI for MySQL
sudo apt-get install mysql-workbench - GUI for MongoDB : Robomongo
- MySQL
-
Clone repository and setup virtualenv inside folder
git clone https://github.com/nitish6174/video-search-engine cd <downloaded project path> virtualenv -p python3 venv_py3 -
Setup SCSS compiler using gulp
sudo apt-get install nodejs nodejs-legacy npm npm install . -
Install pip dependencies inside virtualenv
source venv_py3/bin/activate pip install -r requirements.txt -
Make config file and modify it
cp flaskapp/config.py.example flaskapp/config.py -
Add video data in the root of repository as the folder name
data/Sample data files available at this link -
Running :
- Make sure databases are up
- Export the flask variable with
export FLASK_APP=./flaskapp/app.py - Init the DB models with
flask create_db - Run gulp to compile CSS
gulp - Run server with
./run.sh - Project will be available at
localhost:5000 - Use
Ctrl-Cto stop flask server - Use
deactivateto exit virtualenv