This project aims to create a web application using Django REST Framework (DRF) for managing library operations. It provides users with the ability to reserve and pay for books online, offering a convenient way to access library resources remotely.
-
User Authentication: The project includes user authentication functionality to allow users to create accounts, log in, and manage their profiles.
-
Book Reservation: Users can browse the library's collection, select books they wish to borrow, and reserve them for a specific period.
-
Payment Integration: Integration with payment gateways enables users to pay for reserved books securely online.
-
Book Management: Librarians or administrators have the ability to add, update, and delete books from the library's collection.
-
User Profiles: Users can view their borrowing history, manage their reservations, and update their profile information.
For beginning you have to install Python3+, PostgresSQL and create db
In terminal write down following command:
git clone https://github.com/shaiduchyk/library-group-project.git
python -m venv venv
* MacOS *
source venv/bin/activate
* Windows *
venv/scripts/activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver
Docker should be installed
docker-compose build
docker-compose up
Before start using this API Project, u should use register(if not yet) or use JWT Token for authentication if u already register.
POST api/user/register/
Key | Type | Description |
---|---|---|
Required. Your Email | ||
Password | Password | Required. Your Password |
GET api/user/token/
Parameter | Type | Description |
---|---|---|
Required. Your Email | ||
Password | Password | Required. Your Password |
You can see information about your account inc. email, are you staff etc. (update account info as well)
GET api/user/me/
Note: You can get further resources if you are authenticated (ex. Book List page)
GET /api/books/
POST /api/books/
GET, PATCH, PUT, DELETE /api/books/<int:pk>/
GET /api/borrowings/
POST /api/borrowings/
GET /api/borrowings/<int:pk>/
POST /api/borrowings/<int:pk>/return-borrowing/
GET /api/payments/
GET /api/payments/success/
GET /api/payments/cancel/
GET /api/doc/swagger-ui/
GET /api/doc/redoc/
GET /api/doc/schema/
GET /admin
Example: http://127.0.0.1:8000/admin/
Parameter | Type |
---|---|
Nickname | [email protected] |
Password | gsi579738059 |