{"id":51280876,"url":"https://github.com/cihat-kose/library-management-system","last_synced_at":"2026-06-30T01:32:16.985Z","repository":{"id":353422524,"uuid":"1219407843","full_name":"cihat-kose/library-management-system","owner":"cihat-kose","description":"A console-based library management system built with C#, featuring media catalog management, role-based access control, and loan tracking.","archived":false,"fork":false,"pushed_at":"2026-04-23T21:04:58.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-23T21:31:39.429Z","etag":null,"topics":["clean-code","console-app","csharp","dotnet","library-management-system","object-oriented-design","oop"],"latest_commit_sha":null,"homepage":"","language":"C#","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/cihat-kose.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-23T21:04:40.000Z","updated_at":"2026-04-23T21:08:12.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/cihat-kose/library-management-system","commit_stats":null,"previous_names":["cihat-kose/library-management-system"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/cihat-kose/library-management-system","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cihat-kose%2Flibrary-management-system","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cihat-kose%2Flibrary-management-system/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cihat-kose%2Flibrary-management-system/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cihat-kose%2Flibrary-management-system/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cihat-kose","download_url":"https://codeload.github.com/cihat-kose/library-management-system/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cihat-kose%2Flibrary-management-system/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34949234,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["clean-code","console-app","csharp","dotnet","library-management-system","object-oriented-design","oop"],"created_at":"2026-06-30T01:32:16.189Z","updated_at":"2026-06-30T01:32:16.959Z","avatar_url":"https://github.com/cihat-kose.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📚 Library Management System\n\n![C#](https://img.shields.io/badge/C%23-.NET-512BD4?style=for-the-badge\u0026logo=dotnet\u0026logoColor=white)\n![App Type](https://img.shields.io/badge/App-Console-blue?style=for-the-badge)\n![License](https://img.shields.io/badge/License-MIT-green?style=for-the-badge)\n\nA console-based library management system built with C#, featuring media catalog management, role-based access control, and loan lifecycle tracking through clean object-oriented design.\n\n## Features\n- Manage role-based users (`Member`, `Employee`) with distinct borrowing limits.\n- Maintain a media catalog with specialized item types:\n  - `Book`\n  - `Audiobook`\n  - `EBook`\n  - `Journal`\n- Borrow and return media with business-rule validation.\n- Track due dates using media-specific loan periods.\n- View active user loans, full loan history, and overdue loans.\n- Receive clear runtime feedback for input and validation errors.\n\n## Tech Stack\n- **Language:** C#\n- **Framework:** .NET 8 (`net8.0`)\n- **Application Type:** Console application\n- **Data Storage:** In-memory collections (`List\u003cT\u003e`)\n\n## OOP / Design Principles Demonstrated\n- **Abstraction:** `User` and `Media` are abstract base classes.\n- **Inheritance:** Concrete user and media types extend shared base models.\n- **Polymorphism:** Core behaviors are executed through base-type contracts.\n- **Encapsulation:** Entities enforce internal validation and state transitions.\n- **Single Responsibility:** Domain entities and orchestration logic are separated by purpose.\n\n## How to Run\n```bash\ndotnet restore\ndotnet build\ndotnet run --project LibraryManagementSystem\n```\n\n## Project Structure\n```text\nLibraryManagementSystem/\n├── Core/\n│   └── Library.cs\n├── Loans/\n│   └── Loan.cs\n├── MediaItems/\n│   ├── Media.cs\n│   ├── Book.cs\n│   ├── Audiobook.cs\n│   ├── EBook.cs\n│   └── Journal.cs\n├── Users/\n│   ├── User.cs\n│   ├── Member.cs\n│   └── Employee.cs\n└── Program.cs\n```\n\n## Roadmap\n- Add persistent storage (for example SQLite).\n- Add unit and integration test coverage.\n- Add CI automation for build and test validation.\n- Add reporting/export capabilities for inventory and loan analytics.\n- Add API and web front-end options.\n\n## Contributing\nContributions are welcome. Please read [CONTRIBUTING.md](CONTRIBUTING.md) before opening a pull request.\n\n## Security\nFor vulnerability reporting guidance, see [SECURITY.md](SECURITY.md).\n\n## License\nThis project is licensed under the MIT License. See [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcihat-kose%2Flibrary-management-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcihat-kose%2Flibrary-management-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcihat-kose%2Flibrary-management-system/lists"}