A simple Product review page app.
Some noteworthy information about the key decisions I took during this project are;
- I decided to be very modular in my approach to writing tests as required of me. Hence I ensured I tested all smaller components seperately so as to eliminate or reduce the need to test larger components where the smaller ones were used.
- I decided to store the comments on the user's local browser storage as opposed to sending the data to a server online to reduce the complexity of the product and focus on handling everything on the frontend.
Some further improvements which are still possible on this project include;
- Writing some more test cases even though I have been able to write quite a good number of unit tests already I would have loved to add integration tests and other improved tests.
- With more time I would have loved to improve the styling and desgin of the app more than what it currently is.
- With more time I would want to add a more stricter validation library to handle validation of the input fields in the comment form in a more stricter way such as using Yup and react-hook-form or formik which I have used before.
- React
- TypeScript
- Next.js
- TailwindCSS
- Redux Toolkit
- Vercel for deployment
To clone and run this application locally, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
# Clone this repository
$ git clone https://github.com/elminhoemmanuel/product-review.git
# Move into the product review folder
$ cd product-review
# open up your command line and then Install dependencies
$ npm install
# Run the app
$ npm run dev
# Run tests
$ npm run test