A sleek and user-friendly frontend for the Personal Book Library API. Built with React, this application allows users to manage their personal book collection, view book details, search for books, and much more!
- User Authentication: Secure login and registration system.
- Book Management: Add, update, and remove books from your collection.
- Search Functionality: Search for books based on title, author, or genre.
- Book Details: View detailed information about each book, including its writer and readers.
- Responsive Design: Looks great on both desktop and mobile devices.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Node.js
- npm
-
Clone the repository:
git clone https://github.com/RafaelXokito/personal-library-frontend.git
-
Navigate to the project directory:
cd personal-library-frontend
-
Install the required packages:
npm install
-
Start the development server:
npm start
The application should now be running on http://localhost:3000/
.
- Homepage: Navigate through a list of books and use the search bar to find specific books.
- Book Details Page: Click on a book to view its detailed information and manage it.
- Add Book/Page/Writer: Use the respective forms to add new entries to the library.
- User Profile: View and manage your personal details and book collection.
The frontend interacts with the following API endpoints Backend Repo:
-
Name: Create Writer
- Method: POST
- URL: http://localhost:8080/api/writers
-
Name: Create Book
- Method: POST
- URL: http://localhost:8080/api/books
-
Name: GET Books
- Method: GET
- URL: http://localhost:8080/api/books
-
Name: GET Books Search
- Method: GET
- URL: http://localhost:8080/api/books/search?title=Enchanted&keyword=tale
-
Name: GET Book
- Method: GET
- URL: http://localhost:8080/api/books/9
-
Name: GET Book Writer
- Method: GET
- URL: http://localhost:8080/api/books/9/writer
-
Name: GET Book Current Readers
- Method: GET
- URL: http://localhost:8080/api/books/17/currentreaders
-
Name: GET Book Readers
- Method: GET
- URL: http://localhost:8080/api/books/17/readers
-
Name: Add Book
- Method: PATCH
- URL: http://localhost:8080/api/books/8/add
-
Name: Remove Book
- Method: DELETE
- URL: http://localhost:8080/api/books/8/remove
-
Name: Read Book
- Method: PATCH
- URL: http://localhost:8080/api/books/17/read
-
Name: Next Book Page
- Method: PATCH
- URL: http://localhost:8080/api/books/nextpage
-
Name: Prev Book Page
- Method: PATCH
- URL: http://localhost:8080/api/books/previouspage
-
Name: Create Reader
- Method: POST
- URL: http://localhost:8080/api/readers
- Thanks to all contributors and testers for making this project possible.
- Special thanks to the React community for their invaluable resources and support.