/opinix-sentiment-analytics-tool

project that analyses the sentiments of customers in a visually appealing way

Primary LanguageJavaScriptMIT LicenseMIT

Opinix

About Project

The project Opinix is an extensive effort aimed at tackling the growing problems related to e-commerce. Currently, this is the era of e-commerce, and most people prefer purchasing products online. There are thousands of reviews on each product and to go through each review and analyze the sentiment of every customer is a complicated task. Through the use of machine learning, web scraping, and sentiment analysis, the Opinix web application analyzes user evaluations and presents the opinions of a customer in a visually pleasing way.

Project goal

The goal of this project is to create a platform through which companies can easily analyze the sentiments of customers on their products and look out for room for improvement if there is any. Through the extraction of significant data from the huge world of consumer evaluations, Opinix hopes to transform decision-making processes across a range of application domains, including online shopping platforms, brand feedback, and customer service improvement.

Table of Contents

Demo

demo-opinix.mp4

Features

  • Web scraping using browserless and puppeteer
  • Highly efficient and accurate sentiments of individual reviews, sentiments over time, keywords and overall sentiments
  • Authentication and storage using firebase

Technologies

  • Browserless,Puppeteer
  • React, D3, Chart.js
  • Redux Toolkit
  • Django
  • Node.js
  • Bi-LSTM
  • Firebase

Installation

Prerequisites

You will need to install git lfs. You can install it by here

Setup

  1. Clone the repository:

    git clone https://github.com/parikshit-adhikari/opinix.git
  2. Change directory to Opinix

    cd Opinix
  3. Pull from git lfs

    git lfs pull
  4. Track the large files

    git lfs track "*.txt"

FrontEnd

  1. Change directory to frontend

    cd frontend
  2. Installation of node packages

     npm i
  3. Running the project:

    npm run dev

Backend

  1. Change directory to backend

    cd backend
  2. Installation of necessary modules

     pip install -r requirement.txt
  3. Create migration files

    python3 manage.py makemigrations
  4. Apply the migrations to the database

    python3 manage.py migrate
  5. Running the project:

    python3 manage.py runserver
  6. Navigate to browserless directory and run:

    npm i

    then:

    npm start

    Now, in the same directory (i.e. browserless) create a .env file and add the following:

    TOKEN = <your_token>
    BROWSERLESS_PORT = 3000

    Then run the command to pull and run the docker image for browserless:

    docker run \
      --rm \
      -p 3000:3000 \
      -e "CONCURRENT=10" \
      -e "TOKEN=6R0W53R135510" \
      ghcr.io/browserless/chromium

License

This project is licensed under the MIT License.