A comprehensive web-based library management system built with Django. This system is designed to streamline the management of library resources, including books, authors, and user accounts, with a focus on efficiency and user-friendliness.
- User Authentication: Custom user model with roles (visitor, librarian) for differentiated access and functionalities.
- Author Management: Create, view, and delete authors. Authors are linked to books.
- Book Management: Add and manage books, including details like name, description, and associated authors.
- Order Processing: Handle book orders, including creation and tracking of orders.
- Backend Framework: Django
- Database: PostgreSQL
- Frontend: HTML, CSS (Static files and templates in Django)
- Containerization: Docker (optional for deployment)
- Clone the repository.
git clone https://github.com/ne0ascorbinka/library-django-project.git
- Install dependencies:
pip install -r requirements.txt
- Set up a PostgreSQL database.
- Configure project:
- Go to
.env.template
; - Get your django key and paste in .env file. You can get your key by running:
python .\library\utils\get_key.py
# or on linux:
python ./library/utils/get_key.py
- configure DB parameters
- rename template file to
.env
- Run migrations:
cd library;
python manage.py migrate;
- Start the server:
python manage.py runserver
- Access the web interface at
http://localhost:8000
(or configured port). - Log in as a librarian to access full functionalities.
- Manage authors, books, and orders through the web interface.
Contributions to the project are welcome. Please follow standard GitHub pull request procedures.