{"id":15100878,"url":"https://github.com/mirzaim/library-management-system","last_synced_at":"2026-01-07T02:05:01.527Z","repository":{"id":257455169,"uuid":"858294197","full_name":"mirzaim/Library-Management-System","owner":"mirzaim","description":"Library Management System with Python and MySQL for managing users, books, and transactions. ","archived":false,"fork":false,"pushed_at":"2024-09-16T16:45:01.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T13:48:25.277Z","etag":null,"topics":["library-management","library-management-system","mysql","mysql-database","python","sql"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mirzaim.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-16T16:45:00.000Z","updated_at":"2024-09-16T16:48:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"fb06db1d-1e5f-4c29-a345-2fc0d806e3ef","html_url":"https://github.com/mirzaim/Library-Management-System","commit_stats":null,"previous_names":["mirzaim/library-management-system"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mirzaim%2FLibrary-Management-System","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mirzaim%2FLibrary-Management-System/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mirzaim%2FLibrary-Management-System/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mirzaim%2FLibrary-Management-System/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mirzaim","download_url":"https://codeload.github.com/mirzaim/Library-Management-System/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245858878,"owners_count":20684057,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["library-management","library-management-system","mysql","mysql-database","python","sql"],"created_at":"2024-09-25T18:01:49.879Z","updated_at":"2026-01-07T02:05:01.426Z","avatar_url":"https://github.com/mirzaim.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Library Management System\n\nThis project is a library management system implemented with Python and MySQL. It includes command-line functionality for managing users, books, and transactions. The system supports operations such as user registration, login, borrowing books, and more.\n\n## Project Structure\nThe project is organized into the following directories:\n\n```\n.\n├── code\n│   ├── Pipfile\n│   ├── Pipfile.lock\n│   ├── main.py                 # Command-line interface for library system operations\n│   └── test_library_system.py  # Testing script for stored procedures (future work includes automating the tests)\n└── sql\n    ├── functions.sql           # SQL file defining functions used in the database\n    ├── tables.sql              # SQL file defining database tables\n    └── tests.sql               # SQL file with test queries and data\n```\n\n## Requirements\nTo set up and run this project, you will need the following:\n- Python 3.8+\n- Pipenv (for managing Python dependencies)\n- MySQL\n\n### Setting up the Python Environment\nTo install the required dependencies, run the following commands in the `code` directory:\n\n```\ncd code\npipenv install\n```\n\nThis will create a virtual environment and install the dependencies specified in the `Pipfile`.\n\n### Database Setup\nTo set up the MySQL database schema, execute the SQL scripts in the following order:\n\n1. **Create tables**: Run the `tables.sql` script to set up the initial database schema.\n\n```\nmysql -u \u003cusername\u003e -p \u003cdatabase\u003e \u003c sql/tables.sql\n```\n\n2. **Define functions**: After setting up the tables, execute the `functions.sql` script to create necessary functions.\n\n```\nmysql -u \u003cusername\u003e -p \u003cdatabase\u003e \u003c sql/functions.sql\n```\n\n3. **Run tests**: Finally, you can execute the `tests.sql` script to run any test queries and validate the setup.\n\n```\nmysql -u \u003cusername\u003e -p \u003cdatabase\u003e \u003c sql/tests.sql\n```\n\n### Running the Command-Line Interface\nYou can interact with the library system through the command-line interface (`main.py`). To start the system, run the following command:\n\n```\npipenv run python main.py\n```\n\nYou can then use commands like `register`, `login`, `add_book`, `borrow_book`, etc.\n\n### Testing the System\nThe `test_library_system.py` file contains test cases for the system. To run the existing tests manually, you can execute specific functions by modifying the `main()` function in `test_library_system.py`. Automated tests will be introduced in the future to streamline the testing process.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmirzaim%2Flibrary-management-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmirzaim%2Flibrary-management-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmirzaim%2Flibrary-management-system/lists"}