React project: https://codesandbox.io/s/react-crud-libyzz
- Add login form
- Use email and password in https://632e1123b37236d2ebe5af2c.mockapi.io/users/1
- Bonus: permission based (user A can not create/update/delete other users and other users books)
- Add ability to view books. Click name -> /users/1/books
- Add ability to create/update/delete books.
Form validations:
- title: required
- genre: optional
- description: required
- isbn: required (must be 8 chars length or less)
- edition: required
API: - Show book: GET https://mockapi.io/projects/632e1123b37236d2ebe5af2d/1/books/1
- Create book
POST https://mockapi.io/projects/632e1123b37236d2ebe5af2d/users/1/books
```
{
"title": "Elegant Concrete Mouse",
"author": "Dale Sauer",
"genre": "ut",
"description": "The Football Is Good For Training And Recreational Purposes",
"cover": "http://loremflickr.com/640/480/cats",
"isbn": "ratione-autem-non",
"edition": 44,
}
```
Update book
PUT https://mockapi.io/projects/632e1123b37236d2ebe5af2d/users/1/books/1
```
{
"title": "Elegant Concrete Mouse",
"author": "Dale Sauer",
"genre": "ut",
"description": "The Football Is Good For Training And Recreational Purposes",
"cover": "http://loremflickr.com/640/480/cats",
"isbn": "ratione-autem-non",
"edition": 44,
}
```
Delete book
- GET https://mockapi.io/projects/632e1123b37236d2ebe5af2d/users/1/books/1
-
Add ability to leave a review for each book. Text Rating 1-5
-
Add ability to filter books by:
- title
- isbn
- genre
- Add pagination to users and books. 10 users/books per page