- Implement Search by book title or author name - Implementation in src/app/components/home/home.component.ts (Line 78-134)
- Paginated results - Implementation using material UI pagination set with a limit of 10 search results per page - Implementation in various places in home.component.ts and line 64 in homecomponent.html
- Added limit and offset to improve search performance - Implementation in book.service.ts while making API calls
- Clear search text - Implementation in home.component.ts on line 174 to 179
- Handle edge cases related to api calls (like when the link is undefined then there is no use to redirect user to the link) - Implementation in home.component.html from line 45-48 and also solved some edge cases like error handling in the home.component.ts file
- Add Loaders on the page while fetching data for both the Trending Subjects redirected table view and the new Search result view - Added both while fetching data and in Trending Subjects.You will notice a "Loading...." text.
- Add a Back button to Go back to the home page from the Trending Subject page-Added back button in Trending Subject Page.
- Implement caching for the API responses - Implemented caching for the API responses - home.components.ts - Line 88 to 98
- Deployed application - Deployment link added to description
- All tests passed - Run
npm run test
to check - All console errors suppressed - Run
npm run test
to check
Note - Please wait for some time for search results to be available
This challenge is meant for candidates who wish to intern at Fyle and work with our engineering team. The candidate should be able to commit to at least 6 months of dedicated time for internship.
Fyle is a fast-growing Expense Management SaaS product. We are ~40 strong engineering team at the moment.
We are an extremely transparent organization. Check out our careers page that will give you a glimpse of what it is like to work at Fyle. Also, check out our Glassdoor reviews here. You can read stories from our teammates here.
This challenge involves implementing a Books Library using the Open Library Subjects and Search APIs . The challenge is described in detail here
Note - This challenge is in angular. We work on angular frameworks & after you join we expect the same from you. Hence it is required to complete this assignement in angular itself.
You will hear back within 48 hours from us via email.
- Fork this repository to your github account.
- Clone the forked repository and proceed with steps mentioned below.
- Install Nx using the Nx Documentation
- Install
nvm
for linux or mac from this url - Install
nvm
for windows from this url - Check
nodejs
version by typing :node -v
- Install dependencies :
npm install --save-dev
Run nx serve front-end-internship-assignment
for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.
Visit the Nx Documentation to learn more. Visit the Angular Documentation to learn more.