{"id":15553956,"url":"https://github.com/abdussattar-70/oop-school-library","last_synced_at":"2025-03-29T02:22:27.352Z","repository":{"id":170655812,"uuid":"646846766","full_name":"AbdusSattar-70/oop-school-library","owner":"AbdusSattar-70","description":"The OOP-School-Library project demonstrates the principles of data abstraction, inheritance, encapsulation, and polymorphism, which are fundamental concepts in object-oriented programming(OOP).","archived":false,"fork":false,"pushed_at":"2023-06-08T11:04:36.000Z","size":67,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-02-03T12:28:08.597Z","etag":null,"topics":["abstraction","data","encapsulation","inheritance","polymorphism","rubocop-configuration","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/AbdusSattar-70.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-05-29T13:24:06.000Z","updated_at":"2023-09-04T09:45:56.000Z","dependencies_parsed_at":"2024-08-20T12:31:09.358Z","dependency_job_id":null,"html_url":"https://github.com/AbdusSattar-70/oop-school-library","commit_stats":null,"previous_names":["abdussattar-70/oop-school-library"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbdusSattar-70%2Foop-school-library","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbdusSattar-70%2Foop-school-library/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbdusSattar-70%2Foop-school-library/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AbdusSattar-70%2Foop-school-library/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AbdusSattar-70","download_url":"https://codeload.github.com/AbdusSattar-70/oop-school-library/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246127305,"owners_count":20727706,"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":["abstraction","data","encapsulation","inheritance","polymorphism","rubocop-configuration","ruby"],"created_at":"2024-10-02T14:41:36.687Z","updated_at":"2025-03-29T02:22:27.325Z","avatar_url":"https://github.com/AbdusSattar-70.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003ch1\u003e \u003cb\u003eOOP School Library\u003c/b\u003e \u003chr/\u003e\n\n\u003c/div\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\n# 📗 Table of Contents\n\n- [📖 About the Project](#about-project)\n  - [🛠 Built With](#built-with)\n    - [Tech Stack](#tech-stack)\n    - [Key Features](#key-features)\n- [💻 Getting Started](#getting-started)\n  - [Setup](#setup)\n  - [Prerequisites](#prerequisites)\n  - [Install](#install)\n  - [Usage](#usage)\n- [👥 Authors](#authors)\n- [🔭 Future Features](#future-features)\n- [🤝 Contributing](#contributing)\n- [⭐️ Show your support](#support)\n- [🙏 Acknowledgements](#acknowledgements)\n- [❓ FAQ](#faq)\n- [📝 License](#license)\n\n\u003c!-- PROJECT DESCRIPTION --\u003e\n\n# 📖 [oop-school-library] \u003ca name=\"about-project\"\u003e\u003c/a\u003e\n\n\u003e ## The **OOP-School-Library** project consists of three classes: Person, Student, and Teacher. The Person class has attributes for identification, name, and age, along with getters and setters. It also has a method to check if a person is of age or has parental permission.The Student class inherits from Person and adds a classroom attribute. It includes a method called play_hooky to represent skipping class.The Teacher class also inherits from Person and includes a specialization attribute. It overrides the can_use_services. method to always return true.Each class is saved in a separate file for better organization. The project provides a foundation for a library management system in a school environment.\n\n## 🛠 Built With \u003ca name=\"built-with\"\u003e\u003c/a\u003e\n\n### Tech Stack \u003ca name=\"tech-stack\"\u003e\u003c/a\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eClient\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003cp\u003e \u003cb\u003eRuby: \u003c/b\u003e The primary programming language for the project.\u003c/p\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eServer\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003enone\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eDatabase\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003enone\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003c!-- Features --\u003e\n\n## Key Features \u003ca name=\"key-features\"\u003e\u003c/a\u003e\n\n- Simple command-line interface.\n- Support for IRB input formats.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n\n## 💻 Getting Started \u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\n### To get a local copy up and running, follow these steps.\n\n### Prerequisites\n\nIn order to run this project you need:\n\n- A Computer (MAC or PC)\n- Code editor (VSCode,Atom etc...)\n- A browser (Chrome,Mozilla,Safari etc...)\n- Version Control System (Git and Github)\n- Ruby installed: To run a Ruby project, users must have Ruby installed on their system. You can include the minimum required version of Ruby needed to run the project.\n\n### Setup\n\nClone this repository to your desired folder:\n\n```sh\n  cd my-folder\n  git clone github.com/AbdusSattar-70/oop-school-library\n```\n\n## Install\n\nInstall this project with:\n\n- Install RubyInstaller [Win](https://rubyinstaller.org/)\n- Install Ruby for [macOS](https://www.ruby-lang.org/en/documentation/installation/#homebrew)\n- Install Ruby for [Linux](https://www.makeuseof.com/install-ruby-on-linux/)\n\n## Usage\n\nTo run a Ruby file in the command line, follow these steps:\n\nOpen a command prompt or terminal window on your computer.\n\nNavigate to the directory where the Ruby file is stored using the cd command.\n\nType the following command to run the Ruby file:\n\n```sh\nruby filename.rb\n```\n\n### - where filename.rb is the name of the Ruby file you want to run.\n\n\u003c!-- AUTHORS --\u003e\n\n## 👥 Authors \u003ca name=\"authors\"\u003e\u003c/a\u003e\n\n## \u003ca\u003e 👤 Abdus Sattar \u003c/a\u003e\n\n- GitHub: [AbdusSattar-70](https://github.com/AbdusSattar-70)\n- Twitter: [Abdus Sattar](https://twitter.com/Abdus_Sattar70)\n- LinkedIn: [Abdus Sattar](https://www.linkedin.com/in/abdus-sattar70/)\n\n## \u003ca\u003e 👤 Tshobohwa Salomon \u003c/a\u003e\n\n- GitHub: [Tshobohwa](https://github.com/Tshobohwa)\n- Twitter: [@SalomonTshoboh1](https://twitter.com/SalomonTshoboh1)\n- LinkedIn: [Tshobohwa Salomon](https://www.linkedin.com/in/tshobohwasalomon/)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- FUTURE FEATURES --\u003e\n\n## 🔭 Future Features \u003ca name=\"future-features\"\u003e\u003c/a\u003e\n\n- [ ] Project 2: use the \"Decorator\" design pattern.\n- [ ] Project 3: set up associations.\n- [ ] Project 4: add basic UI.\n- [ ] Project 5: refactor the code.\n- [ ] Project 6: preserve data.\n- [ ] Project 7: unit tests.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- CONTRIBUTING --\u003e\n\n## 🤝 Contributing \u003ca name=\"contributing\"\u003e\u003c/a\u003e\n\nContributions, issues, and feature requests are welcome!\n\nFeel free to check the [issues page](https://github.com/AbdusSattar-70/oop-school-library/issues).\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- SUPPORT --\u003e\n\n## ⭐️ Show your support \u003ca name=\"support\"\u003e\u003c/a\u003e\n\n\u003e If you like this project rate it and give it a star...\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- ACKNOWLEDGEMENTS --\u003e\n\n## 🙏 Acknowledgments \u003ca name=\"acknowledgements\"\u003e\u003c/a\u003e\n\n\u003e We would like to thank the [Microverse team](https://www.microverse.org/) for allowing us to work on this Morse Code Decoder ruby project.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- FAQ (optional) --\u003e\n\n## ❓ FAQ \u003ca name=\"faq\"\u003e\u003c/a\u003e\n\n- **How do I install and run the project?**\n\n  - To install and run the project, you will need to have Ruby installed on your computer. Once you have Ruby installed, you can download the project files and run the program from the command line using the following command:\n    \u003cbr/\u003e\n\n- **What technologies and libraries are used in the project?**\n\n  - The project is written in Ruby and does not require any external libraries or dependencies.\n\n- **How can I contribute to the project?**\n\n  - Contributions to the project are welcome! Please feel free to submit bug reports, feature requests, or pull requests on the project's GitHub repository.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- LICENSE --\u003e\n\n## 📝 License \u003ca name=\"license\"\u003e\u003c/a\u003e\n\nThis project is [MIT](./LICENSE) licensed.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabdussattar-70%2Foop-school-library","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabdussattar-70%2Foop-school-library","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabdussattar-70%2Foop-school-library/lists"}