LibConnect is a react web application which facilitates easy library management incuding the issuance of books.
For the DESIGN project please open the Design
folder.
I tried hosting the site but it was extremely buggy. So, I would really appreciate it if you ran it locally.
- Firstly, either download my repo or clone it into your device.
- Then, in the terminal, change directory to the libconnect folder.
cd libconnect\
Please make sure this is the libconnect folder which is in the same level as the screenshots folder. - Now, run the command
npm i
. This should generate the node_modules folder (Might take a minute). - Finally, enter the command
npm start
. This should start hosting the website locally in your default browser. :)
As firebase
doesn't let users sign in with username, my website uses sign in with email and password ( and sign in with google). Also, firebase
doesn't let users set a password with less than 6 characters. So, I did not follow the user log in info mentioned in the recruitment pdf.
There are 6 accounts already registered:
email: [email protected]
password: admin123
email: [email protected]
password: password1
email: [email protected]
password: password2
email: [email protected]
password: password3
email: [email protected]
password: password4
email: [email protected]
password: password5
[email protected]
is an admin. All other users are initially set as members.
- Sign In / Sign Up
- Access to features based on role
- Home Page
- Book Info Page
- Librarian Tab
- Admin Tab
- Account Tab
When a user makes a new account, by default the role set as a member
. The user can also choose to sign in with his Google account
![](/DeepitPatil/libconnect/raw/main/screenshots/sign_up.png)
![](/DeepitPatil/libconnect/raw/main/screenshots/sign_in.png)
- A non-member or a banned-member can only see the Home tab in the navigation bar.
- A
member
can see the Home tab along with his/her Account tab. - A
librarian
can see the Home tab, Librarian tab & the Account tab. - An
admin
can see the Home tab, Admin tab, Librarian tab & the Account tab.
![](/DeepitPatil/libconnect/raw/main/screenshots/admin_navbar.png)
The home page includes the Search Bar, Genre Filter & the thumbnails of all books along with the title and author. The Search Bar & Genre Filter can be used together to search for a book ina particular genre.
When the user clicks on a book in the Home Page, he/she will be taken to that book's info page. In this page, the user can view the book’s details like title, author, publisher, genre, summary, ISBN, location, availability, rating, etc. The user can also publish a book review and rating and can also view other users' reviews and ratings. In this page, the user can also request to borrow a book, can view his/her request status, return date, etc.
- Only members are allowed to request to borrow a book.
- Only admins and librarians can edit ad delete the book.
- Each user can only publish one review.
- Only admins are allowed to delete book reviews.
![](/DeepitPatil/libconnect/raw/main/screenshots/book_info_1.png)
![](/DeepitPatil/libconnect/raw/main/screenshots/book_info_2.png)
![](/DeepitPatil/libconnect/raw/main/screenshots/review_1.png)
![](/DeepitPatil/libconnect/raw/main/screenshots/review_2.png)
The Librarian tab allows librarians
and admins
to add new books to the library and also accept and reject borrow requests made by members.
The Admin tab allows admins
to manage accounts and change the roles of other users. The admins
an also ban/unban other users.
The Account tab tab shows all the account info including Email, Role, User ID & User History. The User History shows all requests made by the user along with the request status in chronological order.