Optimization:
- search debounce with 400ms when entering text into the search bar, cancels the call if you quickly enter another letter
- memoize function for caching search results for a specific query
- Jest tests with expandedFolders parameter to test the structure
- ESLint is configured to maintain code quality and consistency
- Everything is splited into small class components
All data from the Data.json file
- Clone the repo
git clone https://github.com/favrora/test-tasks.git
- Open project folder
cd task3
- Install NPM packages
npm install
- Build and run app:
npm run start
- App will run here => http://localhost:3000