- React — A virtual DOM JavaScript library for rendering UI.
- Redux — An incredibly simple way of modelling your data app state.
- Webpack — Client-side module builder and module loader
- React Router Redux — Simple bindings to keep React Router and Redux in sync
- Yarn — Package manager and task runner
- Babel — Transpiler from ES6 / JSX to ES5
- ESLint — As a reporter for syntax and style issues
git clone https://github.com/nisargrthakkar/redmart-assignment.git redmart
cd redmart
yarn install
yarn start
open URL http://localhost:8080/ in your browser if it will not open after yarn start
Please find completed task as per below mentioned points for your review. Please note that below mentioned points contains the list of method used for coding & also I have enlisted other possible method to complete the task in a different way. Also, I have justified the current method used. If you are looking for any other alternative method I am open to do the same. Please let me know your views.
-
I have used my starter kit to start this project
-
Here I used one single CSS file for all pages because it has only three pages and I think there are no much of CSS required to so make only one file instead of multiple css files based on page or component.
-
I will filter products, based on brand and price while the page loading. Because of less product and filters are available. The logic/process of filtering is totally depend on total number of product and filters. It is not advisable to use the filter while page loading if there are number of products available. Suppose there are number of products than I will filter the product based on user action as well as I will go with mix approach (initial loading and user action)(Please let me know if it is not clear).
-
I tried to make app design as simple as possible. Please also note that this web app is not responsive and I tested web app in mac chrome and safari(due to unavailability of other systems)
-
After reloading the web application, cart and filter data will automatically remove as this data is not stored at local storage or third party.If required I can always do the same.