Kaplan Coding Assignment - Book List
Author: Tom Herrmann
Mission
Build a web application to render all the Kaplan books and allow the students to search from the list of books available
Features
View list of all available books Be able to search books by
- Title
- Author
- Publisher
Be able to create new book
- Build a small form
- Add data to local copy
Api
Use google books api to fetch all Kaplan Test Prep books https://www.googleapis.com/books/v1/volumes?q=kaplan%20test%20prep
Requirements
- Good semantic HTML5 markup
- CSS implementation with BEM and SCSS
- Modular code
- Desktop & Mobile Friendly
- Unit tests
- Readme with clear steps on how to run the application
Bonus points:
- Use ngRx, redux or other state management libraries on the front-end
- Error handling
- Accessibility (https://www.w3.org/TR/WCAG21/)
Tech Stack
Please use Angular 7+ or React to implement this.
- If you pick Angular then Angular-CLI should be used to set up the foundation.
- If you choose React feel free to use Create React App to setup your app. For unit tests you can use Jest, Jasmine or any such similar framework.
Submission
Please use Github to submit your code and send us the link to the Repository
Usage
-
Clone this repository
-
Run the following terminal command in the project's root directory
NPM:
npm i
Yarn:
yarn
- Run the following to build your bundle file
NPM:
npm run build
Yarn:
yarn run build
- Run the following to start your server
NPM:
npm start
Yarn:
yarn start
-
Proceed to localhost:3000
-
Search for books by title, author, or publisher, or add a new book to the list
Testing
- Run the following command in the root directory
NPM:
npm run test
Yarn:
yarn run test
Contribute
-
Clone this repository
-
Run the following terminal command in the project's root directory
NPM:
npm i
Yarn:
yarn
- Run the following to start your dev server
NPM:
npm run dev
Yarn:
yarn run dev