Giter VIP home page Giter VIP logo

1391819 / kdrama-dash Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 32.33 MB

A dashboard to discover and search for Korean TV series. Built using React, Flask, SCSS, Sklearn and Docker.

Home Page: https://kdrama-dash.herokuapp.com/

License: MIT License

Python 12.90% HTML 0.72% JavaScript 57.14% SCSS 28.32% Dockerfile 0.86% Shell 0.07%
flask react scss docker sklearn item-based-recommendation api heroku eda

kdrama-dash's Introduction

logo

KDrama Dash - V1

A web application to discover and search for 1500+ Korean TV series. Built using React and Flask. All the data was taken from TMDB's API and pre-processed initially on Kaggle's notebooks.

During its development, additional publicly shared resources were created: a Kaggle dataset, and a relatively simple example regarding how to use the provided dataset to create a recommendation system.

Roadmap

  • Research TMDB’s API and retrieve series data
  • Perform data cleaning
  • Create public Kaggle dataset
  • Create public Kaggle notebook for a simple recommendation system
  • Perform Exploratory Data Analysis (EDA)
  • Develop responsive front-end
  • Develop back-end functionality
  • Implement series filtering features
  • Create item-based collaborative filtering recommendation system
  • Containerise and deploy the application
  • Test and optimise performance
  • Improve UX/UI
  • Ensure compatibility with Safari and Firefox
  • Research automatic scheduling of data extraction with Airflow
  • Implement sign-up and sign-in features
  • Migrate application from CSV to a database-based solution
  • Design watch-list feature
  • Create user-based collaborative filtering recommendation system
  • Develop light and dark modes

Stack

  • React, Flask and SCSS
  • API, Sklearn and EDA
  • Item-based collaborative filtering (cosine similarity)
  • Docker + Heroku

Project structure

$PROJECT_ROOT
│   # GitHub repo utilities
├── utils
│   # Front end of the application
├─┬ front-end
│ │   # Static files
│ ├── public
│ │   # Main front-end files
│ └─┬ src
│   │   # Page files
│   ├── pages
│   │   # Styling files
│   ├── scss
│   │   # React component files
│   ├── components
│   │   # Routing configuration
│   ├── config
│   │   # Static assets
│   └── assets
│   # Back end of the application
└─┬ back-end
  │   # Data used to build the application
  ├── data
  │   # Flask server
  └── server.py

Highlights

landpage gif

Getting Started

Development

  1. Clone the repo
    git clone https://github.com/1391819/kdrama-dash
  2. Install all the required libraries
    cd back-end
    pip install -r requirements.txt
  3. Start Flask server
    python server.py
  4. Install NPM packages
    cd ../front-end
    npm install
  5. Modify the package.json file and add the proxy to the flask server's local port

    "proxy": "http://localhost:5000/"

  6. Start the project
    cd front-end
    npm start
  7. Go to the local site

    http://localhost:3000/

Attributions

The Movie Database

License

MIT © Roberto Nacu

kdrama-dash's People

Contributors

1391819 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.