The College Library Management System app is designed to track the student records and book records of a library. There are various problems also faced by the student in library such as finding any particular book, information whether book is available or not, for what time this book will be available, searching of books using ISBN number etc. To eliminate this manual system, College Library Management System has been developed. This project was developed by a taem during the AFourathon 3.0 Hackathon, by AFOUR Technologies.
Deployed App link - https://library-project-api.onrender.com/
Project B: College Library Project:
College Library Project is broken up as 3 problem statements. You can implement as many working solutions for problem statements as you can. You can use same or different tech stack/languages for coding each problem statement.
Problem Statement 1 - Student Details App Build an application that can be run as a container on the cloud for creating/updating/deleting a student. The functionality of the application is:
- Allow user to add, update, delete a student Each student should have: Student Name, Student ID Number, Student Email, Student Phone Number
- Persist all student details in the database
Problem Statement 2 - Books App Build an application that can be run as a container on the cloud for creating/updating/deleting a library book. The functionality of the application is:
- Allow user to add, update, delete a book Each book should have: Book Title, Book Author, Book Description, Book Code
- Persist all subjects in the database
Problem Statement 3 - Book Lending App Build an application that can be run as a container on the cloud for lending/updating/deleting book for each student. The functionality of the application is:
- There should be 2 pages/screens/views – Student Page and Book Page.
- On the Student Page: The user should be able to select a student from a list of students (From Problem Statement 1), Then let them select, update, delete the book(s) (From Problem Statement 2) for that student.
- On the Books Page: The user should be able to select a book from list of books (From Problem Statement 2), Then let them select, update, delete the student that have chosen the book.
- Persist all details in the database.
The College Library Management System app utilizes the following technologies:
- Node.ts: Evented I/O for the backend
- Express: Fast node network app framework
- MongoDB: NoSQL database
- React: Typescript library for building web interfaces
- Docker: A set of platform as a service products that delivers software in packages called containers
- ChakraUI: A react component library
- Recoil: A state management library for React
The backend api is constructed using Node and Express in typescript. It follows microservice architecture. It consists of two fine-grained services, books service and students service, and another backend service to intigrate all the microservices. Books services handles all the logic for handling books related api calls. Students services handles all the logic for handling Students related api calls. Both the services are connected to the same mongo database which contains the data documents with refrences for records related to issuing books.
Database Document Models
Features for Students Page
- Adding a new student
- Deleting a student
- Updating a student's details
- Issue a book to a selected student
- Return a issued book by a student
- Get the details of books issued to every student
- Search student via search bar
Features for Books Page
- Adding a new book
- Deleting a book
- Updating a book's details
- Get the status of the books
- Issue the selected book to a student
- Return the selected book if issued
- Get the details of the student to whom the book is issued to
- Search book via search bar
Students Page
- Homepage
- Add student
- View Student Details
- Edit student Details
- Delete Student
- Issue Book
Books Page
- Homepage
- Add Book
- Book Details
- Edit Book Details
- Delete Book
- Issue Book
- User Authentication and Roles
- Notifications and Reminders
- Reservation System
- Fine Management
- Intigrating a recomendation model for recomending books to the students according to their previously issued books
The team behind the app consists of the following members:
- Jatin Yadav
- Tushar Joshi
- Indrayudh Ghosh