Welcome to the Book Search Web Application! This web application allows users to search for books, register, login, and even delete their accounts. Whether you're a book enthusiast or just looking for your next read, this platform has something to offer.
This project is a web-based book search engine with user registration and authentication capabilities. It is built using React for the frontend and Go for the backend.
The application allows users to:
- Register a new account
- Log in to access personalized features
- Search for books by name, author, or genre
- View book details and add them to their cart
- Delete their user account if desired
-
User Registration: Users can create an account quickly and easily to access personalized features.
-
User Authentication: The application ensures secure user authentication when logging in.
-
Book Search: Users can search for books using keywords such as book name, author, or genre.
-
Book Details: Clicking on a book displays detailed information, including the book's title, author, publisher, published date, description, and the option to add it to the cart.
-
User Account Deletion: Users have the option to delete their accounts if they decide to leave the platform.
To get started with the Book Search Web Application, follow these steps:
Create the table 'users' in Postgresql as follows:
CREATE TABLE users (
id serial PRIMARY KEY,
email character varying(255) NOT NULL,
password character varying(255) NOT NULL,
is_deleted boolean
);
Note : Don't forget to change the database credentials in main.go file
-
Clone the repository to your local machine.
-
Navigate to the project directory.
-
Install the necessary dependencies for both the frontend and backend.
npm install
-
Configure the database settings in the Go backend code.
-
Run the backend server using Go in a different terminal.
go run main.go
- Start the React frontend application.
npm start
Once the application is up and running, users can:
-
Register a new account by providing an email and password.
-
Log in with their registered credentials to access the search and book details features.
-
Search for books using keywords in the search bar.
-
Click on a book to view its details and add it to their cart.
-
Delete their user account by providing their email and password.
The project relies on the following technologies and libraries:
-
React: JavaScript library for building user interfaces.
-
Go: Programming language for building the backend server.
-
Axios: JavaScript library for making HTTP requests.
-
Gorilla Mux: Go package for creating flexible routers.
-
PostgreSQL: Database management system for storing user data.
-
Cors: Go package for handling Cross-Origin Resource Sharing (CORS).
- @raguwull - Creator of the website and developer of the project.