Skip to content

A Windows Desktop Application built with C# .NET Framework WinForms for managing library operations including cataloging, circulation, member management, and reporting.

License

Notifications You must be signed in to change notification settings

KingPandesal/GaBasa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

📚 GaBasa: Library Management System 📚


Built with care, so every book finds a reader — and every reader finds a story.

© 2026 Ken Crisostomo

  • This project is provided for educational and portfolio purposes.
  • Attribution is required for reuse.

GABASA

A Windows Desktop Application built with C# .NET Framework WinForms for managing library operations including cataloging, circulation, member management, and reporting.

Take a look at our Wiki here on github to understand more about GaBasa: The Library Management System.

This project follows a 3-layer architecture:

  • 🖥️ LMS.Presentation → WinForms UI
  • ⚙️ LMS.BusinessLogic → Business Logic Layer (Managers)
  • 💾 LMS.DataAccess → Data Access Layer (Repositories, DB connection)

✨ Features

  • 👥 User Management (Librarian / Admin, Library Staff, Member)
  • 📖 Book Cataloging & Inventory
  • 🔄 Borrowing, Returns, Renewals
  • 💰 Fines and Penalty Management
  • 🔍 Advanced Search & Discovery
  • 📊 Reports & Analytics Dashboard

💻 Prerequisites

  • 🪟 Windows 10 or later
  • 🛠️ Visual Studio 2022 (Community)
  • .NET Framework 4.8
  • 🗄️ SQL Server for database

🤝 Contributors

Thanks to everyone who contributed to GaBasa!

Name Role GitHub
Kenny Crisostomo Lead Developer @SixxCodes
Merry Guisihan Database Manager @Mauitypings
Vien Ugay UI Design @viensed
Jerard Lavilla UI Design @lavillajerard

🔗 Links


🚀 Getting Started

1️⃣ Clone the repository

D: (if you want to put it on drive D, ignore if on drive C)
cd (where you want to place project folder, ex: D:Programs/LMS_Gabasa)
git clone https://github.com/SixxCodes/GaBasa.git

2️⃣ Open in Visual Studio

  • Open LMS_GaBasa.sln in Visual Studio 2022 or on File Explorer.
  • Ensure all three projects (Presentation, BusinessLogic, DataAccess) are loaded.

3️⃣ Set Startup Project

  • Right-click LMS.Presentation → Set as Startup Project.

4️⃣ Configuration Database Connection (App.config)

This project requires a SQL Server connection.

  1. Navigate to the LMS.Presentation project.
  2. Locate the file:
App.config.example
  1. Make a copy and rename it to:
App.config
  1. Open App.config and update the connection string:
<connectionStrings>
  <add
    name="LibraryDB"
    connectionString="Server=YOUR_SERVER_NAME;Database=YOUR_DATABASE_NAME;Trusted_Connection=True;"
    providerName="System.Data.SqlClient" />
</connectionStrings>

📌 Notes

  • Replace YOUR_SERVER_NAME with your SQL Server instance (e.g. localhost\SQLEXPRESS)
  • Replace YOUR_DATABASE_NAME with your database name
  • App.config is intentionally not tracked in the repository for security reasons (included in .gitignore)

5️⃣ Restore NuGet Packages / Install Dependencies

This project uses the following NuGet packages:

  • 🖌️ ReaLTaiizor (for modern UI components)
    • ReaLTaiizor GitHub – check this for tutorials, usage examples, and themes. (Make sure you're installing the correct package! Look at the package title, description, and authors to make sure.)
  • 🔒 BCrypt.Net-Next
    • Used for secure password hashing and verification to protect user credentials.
  • 🧾 ZXing.net
    • Library for generating and scanning barcodes, used for book accession numbers and circulation processes.
  • 🎥 AForge
    • Computer vision and image processing framework, used for camera-based barcode scanning support.
  • 🧾 CsvHelper
    • Handles CSV file reading and writing, used for bulk import of books and catalog data.

Note:

  • Visual Studio should restore them automatically when you build the solution.
  • You can also install them manually via NuGet Package Manager.
  • Additional packages will automatically be installed as dependencies required by BCrypt.Net-Next.

To get a clearer view of all dependencies and their relationships:

  1. In Visual Studio, go to Architecture → Generate Dependency Graph → For Solution.
  2. Explore the diagram to see how projects and packages relate.

Or go to Insights of this repository and click the Dependency Graph tab to view all packages installed in this project.

6️⃣ Build and Run

  • Press F5 to build and run the application.

✨ Thank you for exploring GaBasa! ✨

Developed with best practices, collaboration, and a passion for building meaningful systems.

License

This project is licensed under the MIT License. © 2026 Ken Crisostomo

About

A Windows Desktop Application built with C# .NET Framework WinForms for managing library operations including cataloging, circulation, member management, and reporting.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages