Skip to main content

Complete Library Management for Modern Institutions

Streamline equipment loans, manage inventory, and control access with an open-source platform built for educational institutions and enterprises.

Get Started in Minutes

Set up your library management system and start serving users quickly with our streamlined installation process.

1

Clone and Set Up Virtual Environment

Clone the repository and create an isolated Python environment to avoid dependency conflicts.
git clone https://github.com/MaickFeliz/SWL.git
cd SWL
python -m venv venv
source venv/bin/activate  # On Windows: .\venv\Scripts\activate
2

Install Dependencies

Install all required Python packages including Flask, SQLAlchemy, and other core dependencies.
python -m pip install --upgrade pip
pip install -r requirements.txt
3

Run the Application

Start the development server. The database will be automatically initialized on first run with a default admin account.
python run.py
Default admin credentials: Document ID 1000000000, password admin123. Access the system at http://localhost:5000 or from any device on your network at http://0.0.0.0:5000.
4

Configure Your Library

Log in with the admin account and configure user roles, add your inventory items, and customize settings to match your institution’s requirements.

Core Features

Everything you need to manage a modern library, from user authentication to automated overdue tracking.

Multi-Tier User Management

Role-based access control with Admin, Librarian, Premium, and Regular user tiers for granular permissions.

Smart Loan System

Real-time validation, approval workflows, and automated overdue detection with penalty calculations.

Dynamic Inventory

Track individual items with serial numbers, manage availability, and categorize equipment and books.

Fast Loan Kiosk

Self-service mode for high-traffic environments with document ID lookup and quick checkout.

Visit Tracking

Log library visits and generate usage statistics for resource planning and reporting.

Automated Scheduling

Background tasks check for overdue loans daily and update statuses automatically.

Explore by Role

Find the documentation you need based on your role in the system.

Student Guide

Learn how to request equipment, check loan status, and manage your account as a regular user.

Premium User Guide

Access specialized equipment, request multiple items, and use instructor privileges.

Librarian Guide

Approve loan requests, process returns, manage inventory, and handle day-to-day operations.

Admin Guide

Manage users, configure system settings, oversee all operations, and maintain the platform.

Technical Resources

Dive into the technical details of the platform for customization and integration.

Database Models

Explore the data structure including User, Catalog, ItemInstance, Loan, and LibraryLog models.

Service Layer

Understand the business logic in LoanService and InventoryService for extending functionality.

Route Blueprints

Review the Flask blueprints for authentication, main user flows, and admin operations.

Configuration Guide

Configure environment variables, database settings, penalty fees, and scheduler options.

Ready to Transform Your Library?

Start managing your library’s inventory, loans, and access control with our comprehensive open-source platform.

Build docs developers (and LLMs) love