OpenReview is a machine learning app that uses natural language processing to save businesses time and money by predicting if the business will be successful, identifying business competitors, recommend highly correlated products that make other busineses successful, and categorizing customer reviews so employers can see how customer feel about their services and food etc.
Please visit https://open-review.vercel.app/ to try the app. Below you will find a video and image preview of the app.
demo_short.mp4
To launch the app go to the root of the directory and run the following command:
docker-compose build
docker-compose up
OR
Clone the repository then install the dependencies by going inside the /frontend folder and run
npm install
Then run the following command inside /backend folder:
pip install -r requirements.txt
Then install redis in your local machine, then run
redis-cli
Then go to the root of the directory and run the command:
npm run dev
This will launch the project at port 3000 (http://localhost:3000)
To enable prettier auto formatting run the command inside /frontend directory:
npm run format:fix
To test run the following inside /frontend folder
npm run format
The goal of this project is to provide businesses with key insights to make good business decisions that will save them time and potential money by:
- Predicting if a business will be successful based on initial customer reviews and rating
- Categorizing customer reviews by topics to gain deeper insight into different areas where the business is doing well or not
- Recommend similar competitor businesses by category and popularity.
For more information about the final results of this task and my approach to this data science problem see the datascience doc
For this project I used the following langauges and tech-stack:
Frontend : Next.js, Typescript, Sass.
Backend : Flask, Redis.
Deployment : Docker, Google Cloud Kubernetes.
Figma : figma design
I was inspired to create this app when I saw Yelp's website and Niarra Travel. I saw the opportunity to enchance yelp's review by tieing in natural language processing to find hidden customer review categories , reocmmendations and predicting business sucess. I also wanted to make a very beautiful and interactive website like Niarra Travel.
Some challenges I faced in this project so far includes:
- Learning a new framework Next.js, Flask.
- Learning TypeScript.
- Facing many bugs and build issues.
- Tieing in Docker-compose and third party libraries.
- Learning natural language processing.
See the API doc for more information.
Backend and redis is hosted on render and the frontend is hosted on vercel. In the root directory is a render.yaml file. For more information on this file please visit the render.yaml documentation.