livres is a simple web application used for library management.
Logo made using this.
- The front end for this project has been written in
TypeScript
and usesReact
along withMUI
for styling and components. - The back end is written in
Python
and usesflask
withSQLite3
serving as the database andSQLAlchemy
for the ORM.
The application provides a user interface to the librarian who is supposed to run and manage the library transactions. The librarian is able to perform the following functions:-
- Issuing books to members and recording date of borrowing.
- Tracking status of books lent out and maintaining list of overdue books.
- Issuing book returns and recording date of returning.
- Altering dates or deleting records of pending as well as completed transactions.
- Importing books from an external API into the user's sytem by searching for the name, author, isbn code or publisher and then selecting the number of books to be imported.
- The imported stock of books can be viewed, searched and managed through the application.
- Registering new members to the library and managing existing ones.
- Maintaining records of the debt owed by each member to the library.
- A member owing more than Rs. 500 is unable to borrow new books till he returns what he owes.
Icons by max.Icons. Lottie by Pablo Gringas.
To run this application on your system, open a terminal and
- Clone this repository by running
git clone https://github.com/krantheman/livres
. - Install python dependencies by running
pip install -r requirements.txt
- Export flask app variable with
export FLASK_APP=server
- Run server with
flask run
- Next, open a new terminal instance and
cd client
. - Install packages by running
npm install
. - Start server with
npm start
.