Skip to content

Harshvg2021/PlayStore-Review-Processor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PlayStore-Review-Processor

image

A web application for searching and displaying reviews based on date and category. This application scrapes and categorizes reviews from the Google Play Store, allowing users to search reviews by selecting a date within the past 7 days and filtering by categories such as Bugs, Complaints, Crashes, Praises, and Others.

Tech Stack

  • Frontend: React.js
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Web Scraper: google-play-scraper library
  • LLM Classifier : @xenova/transformers library

Live Demo

(Please Note that the backend deployed server shuts down due to inactivity due to being a free teir service, Please give it a few moments to load the data , in the frist request )

(Please Note : Data is available from November 3rd, 2024 onwards )

You can access the deployed version of this application here: Live Demo Link


API Documentation

1. Search Reviews

  • Endpoint: GET /api/reviews/search
  • Description: Searches for reviews based on selected date and category.
  • Query Parameters:
    • date - Date in the format YYYY-MM-DD (required)
    • category - Category of review (required, one of Bugs, Complaints, Crashes, Praises, Other)
  • Response:
    {
      "success": true,
      "count": 1,
      "data": [
        {
          "_id": "672b6cfb1868bdeedd5d54a7",
          "content": "How come the game stopped working? I can't login, it's giving error 225.",
          "category": "Bugs",
          "date": "2024-11-04T16:48:26.251Z",
          "__v": 0
        }
      ],
      "dateRange": {
        "from": "2024-10-29",
        "to": "2024-11-05"
      }
    }
    

Running Locally

Prerequisites

  • Node.js (version >= 14)
  • MongoDB (local or cloud instance)

Steps

  1. Clone the Repository

    git clone https://github.com/<YOUR_USERNAME>/PlayStore-Review-Processor.git
    cd PlayStore-Review-Processor.git
  2. Start the Backend

    navgiate to backend folder

    cd backend 

    Pull the Docker image

    docker pull harshvg2021/review-processor:latest

    Create a .env file in the backend folder with the following content:

    PORT=5000 
    MONGODB_URI=your_mongodb_connection_string

    Run the container:

    docker run -p 5000:5000 --env-file .env harshvg2021/review-processor:latest

The backend server should now be running on http://localhost:5000

  1. Start Frontend

    navgiate to frontend folder

    cd frontend 

    Install dependencies

    npm install

    Start the frontend:

    npm start

    You can now access the frontend running on http://localhost:3000

Cost Eastimation

Frontend

-vercel pro 20$ /pm

Assumptions : 10000 + visitors

Backend

-render pro 7$ /pm

Assumptions : Daily APi calls >50000 , concurrent user > 200

Database

-MongoDB M0 cluster 9$ /pm

Assumptions : 100000+ records, Daily users > 300

Total Cost = 35$ per month with the above assumption

Resources Used

  • Scrapping: npmjs.com , google-play-scraper library
  • LLM Classification: Medium Blog, npmjs.com, @xenova/transformers library
  • Styling/CSS help for Frontend: ChatGPT

Releases

No releases published

Packages

 
 
 

Contributors