Git Product home page Git Product logo

decidata's Introduction

Detections dashboard

Full stack application to track the detections from CSV file using Python and React.

See the live demo!

https://decidatatv.luisacerv.dev/

Backend

Python API using flask-restful to serve a single GET endpoint /detections which will return a JSON object with the channels, brands, commercials, dates and detections.

Python version:

  • python 3.6

How to run?

In order to make easier to run the project I have used docker, to run the project using docker run the following commands:

    1. In the projject root folder cd api
    1. docker build -t detections_api:latest . -f Dockerfile
    1. docker run -d -p 5000:5000 detections_api:latest
    1. Check if everyting is ok by running docker ps to see if your container is running at port 5000
    1. Have fun!!!

Not a docker user?

    1. In the projject root folder cd api
    1. Create a new python virtual env python3.6 -m venv env
    1. Start your environment source env/bin/activate
    1. Install dependencies pip install -r requirements.txt
    1. Run the app python src/app.py
    1. Have fun!!!

Front-end

To build the frontend of the application I have used ReactJS as framework and Antd as styling framework.

For the project structure I have followed the concept of atomic design, you can learn more about atomic design here

How to run?

The application has been configured using paceljs and uses yarn as package manager, anyway you can use npm

To run:

    1. From the project root cd client
    1. Install dependencies yarn install or npm install
    1. Add new .env file with the following: API_ENDPOINT=http://localhost:5000/detections or rename the .env-example file to .env
    1. Run the app npm start
    1. Once the is built, go to http://localhost:1234
    1. Have fun!!!

How to test

In order to test the components I have implemented jest and enzyme.

    1. Run tests npm test

ToDo

    1. Add test cases to increase test coverage

decidata's People

Contributors

luisacerv avatar

Watchers

James Cloos 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.