React Assignment: "Online Library System"
Objective:
Create an online library system.
Requirements:
1. Home Page: (15 marks)
○ A landing page with a welcome message and a list of book categories (e.g.,
Fiction, Non-Fiction, Sci-Fi, etc.). ( 5 marks)
○ Display a list of popular books with a link to view more details.( 5 marks)
○ A navigation bar with links to "Home", "Browse Books" and "Add Book" ( 5
marks)
2. Browse Books Page: (20 marks)
You can use dummy data for books collection.
○
Display a list of books filtered by category. (5 marks)
Use dynamic routing to filter books by category (e.g., /books/:category).(5
○
marks)
○ Each book should have a "View Details" link that routes to the Book Details page.
(5 marks)
○ Search Functionality: Add a search bar on the Browse Books page to filter
books by title or author.( 5 marks)
3. Book Details Page: (15 marks)
○ A dynamic route that displays detailed information about a selected book. (5
marks)
○ Show book title, author, description, and rating. (5 marks)
○ Include a "Back to Browse" button or link to return to the Browse Books page. (5
marks)
4. Add Book Page: (30 marks)
○ A form for adding a new book to the library. (5 marks)
○ Use Redux to manage the state of the books list. (10 marks)
○ After submission, redirect the user to the Browse Books page with the newly
added book displayed. (10 marks)
○ Implement form validation to ensure all fields are correctly filled out.(5 marks)
5. 404 Page: (10 marks)
○ A "Page Not Found" route for any undefined routes. (5 marks)
○ This page should include a link back to the Home page. (5 marks)
Submission (10 marks)
● Submit the link to your GitHub repository containing the project. (5 marks)
● Ensure the README file includes instructions on how to run the application. (5 marks)