{"id":17530075,"url":"https://github.com/frempongdev/oop-school-library","last_synced_at":"2025-10-09T09:15:18.827Z","repository":{"id":154426158,"uuid":"632173831","full_name":"frempongdev/OOP-school-library","owner":"frempongdev","description":"School Library is a Ruby console application for managing a library of a school. The application leverages Object Oriented Programming (OOP) and its classes to create manageable objects like students, teachers, classroom etc. Built with Ruby, Postgesql.","archived":false,"fork":false,"pushed_at":"2023-05-04T19:51:03.000Z","size":43,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-04-23T18:56:14.992Z","etag":null,"topics":["database","oop","oop-in-ruby","orm","postgresql","relational-databases","ruby","sql"],"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/frempongdev.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-04-24T21:37:58.000Z","updated_at":"2024-06-14T05:51:41.000Z","dependencies_parsed_at":"2024-07-17T12:20:49.043Z","dependency_job_id":null,"html_url":"https://github.com/frempongdev/OOP-school-library","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/frempongdev/OOP-school-library","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frempongdev%2FOOP-school-library","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frempongdev%2FOOP-school-library/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frempongdev%2FOOP-school-library/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frempongdev%2FOOP-school-library/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frempongdev","download_url":"https://codeload.github.com/frempongdev/OOP-school-library/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frempongdev%2FOOP-school-library/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001114,"owners_count":26083021,"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","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"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":["database","oop","oop-in-ruby","orm","postgresql","relational-databases","ruby","sql"],"created_at":"2024-10-20T16:43:47.197Z","updated_at":"2025-10-09T09:15:18.785Z","avatar_url":"https://github.com/frempongdev.png","language":"Ruby","readme":"\n\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003c!--\nHOW TO USE:\nThis is an example of how you may give instructions on setting up your project locally.\n\nModify this file to match your project and remove sections that don't apply.\n\nREQUIRED SECTIONS:\n- Table of Contents\n- About the Project\n  - Built With\n  - Live Demo\n- Getting Started\n- Authors\n- Future Features\n- Contributing\n- Show your support\n- Acknowledgements\n- License\n\nOPTIONAL SECTIONS:\n- FAQ\n\nAfter you're finished please remove all the comments and instructions!\n--\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003c!-- You are encouraged to replace this logo with your own! Otherwise you can also remove it. --\u003e\n  \u003cimg src=\"https://content.myconnectsuite.com/api/documents/fedd1ea26ac64d9c9c2e7cb9f3e7ffd2.jpeg\" alt=\"logo\" width=\"150\"  height=\"auto\" /\u003e\n  \u003cbr/\u003e\n\n  \u003ch2\u003e\u003cb\u003eSchool Library\u003c/b\u003e\u003c/h2\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  - [🚀 Live Demo](#live-demo)\n- [💻 Getting Started](#getting-started)\n  - [Setup](#setup)\n  - [Prerequisites](#prerequisites)\n  - [Install](#install)\n  - [Usage](#usage)\n  - [Run tests](#run-tests)\n  - [Deployment](#triangular_flag_on_post-deployment)\n- [👥 Authors](#authors)\n- [🔭 Future Features](#future-features)\n- [🤝 Contributing](#contributing)\n- [⭐️ Show your support](#support)\n- [🙏 Acknowledgements](#acknowledgements)\n- [❓ FAQ (OPTIONAL)](#faq)\n- [📝 License](#license)\n\n\u003c!-- PROJECT DESCRIPTION --\u003e\n\n# 📖 School Library  \u003ca name=\"about-project\"\u003e\u003c/a\u003e\n\n**School Library** is a Ruby console application for managing a library of a school. The application leverages Object Oriented Programming (OOP) and its classes to create manageable objects like students, teachers, classroom etc.\n\n\n## 🛠 Built With \u003ca name=\"built-with\"\u003e\u003c/a\u003e\n- Ruby\n\n### Tech Stack \u003ca name=\"tech-stack\"\u003e\u003c/a\u003e\n\n\u003c!-- Features --\u003e\n\n### Key Features \u003ca name=\"key-features\"\u003e\u003c/a\u003e\n\n- **[This project has a Person class with name, age, etc properties that serves as a super class for Student and Teacher classes]**\n- **[This project has a  Student class that inherits from Person class]**\n- **[This project has a  Teacher class that inherits from Person class]**\n- **[This project uses Gitflow]**\n **[Refactor code to follow SOLID principles]**\n- **[Preserve data in json files]**\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- LIVE DEMO --\u003e\n\n\u003c!-- ## 🚀 Live Demo \u003ca name=\"live-demo\"\u003e\u003c/a\u003e --\u003e\n\n\u003c!-- \u003e Add a link to your deployed project. --\u003e\n\n\u003c!-- - Live demo link will appear when ready --\u003e\n\n\u003c!-- \u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e --\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n\n## 💻 Getting Started \u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\n\nTo get a local copy up and running, follow these steps.\n\n### Prerequisites\n\n- In order to run this project you need:\n\n- [git](https://git-scm.com/downloads): A tool for managing source code\n- [Visual Studio Code](https://code.visualstudio.com/): A source code editor\n\u003c!--\nExample command:\n\n```sh\n gem install rails\n```\n --\u003e\n\n### Setup\n\n- Clone this repository to your desired folder: https://github.com/frempongdev/OOP-school-library.git\n- Run bundle install to install the dependencies.\n\n### Install\nInstall this project with:\n\n-  cd school-library\n-  ubuntu version 22 or higher\n\n### Usage\nTo run the project, execute the following command:\n\n- ruby person.rb\n- ruby student.rb\n- ruby teacher.rb\n\n### Run tests\n\nTo run tests, run the following command:\n- Run robocop . \n\n\u003c!--\nExample command:\n\n```sh\n  bin/rails test test/models/article_test.rb\n```\n---\u003e\n\n### Deployment\n\nYou can deploy this project using:\n- Github pages\n\nGithub pages\n\n\u003cp\u003efollow \u003ca href=\"https://www.w3schools.com/git/git_remote_pages.asp?remote=github\"\u003ethese steps\u003c/a\u003e for example\u003c/p\u003e\n\u003c!--\nExample:\n\n```sh\n\n```\n --\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- AUTHORS --\u003e\n\n## 👥 Author \u003ca name=\"authors\"\u003e\u003c/a\u003e\n\n👤 **Frempong**\n\n- GitHub: [@frempongdev](https://github.com/frempongdev)\n- Twitter: [@knobaddy](https://twitter.com/knobaddy)\n- LinkedIn: [Samuel knower Amankwaa-Frempong](https://www.linkedin.com/in/frempongdev/)\n\n👤 **Jonas Nuta Wallah**\n\n- GitHub: [@Jonas-45](https://github.com/jonas-45)\n- Twitter: [@twitterhandle](https://twitter.com/twitterhandle)\n- LinkedIn: [LinkedIn](https://linkedin.com/in/linkedinhandle)\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- [Classromm Class implementation]\n- [Book Class implementation]\n- [Console app navigation and functionalities]\n\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](../../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- Give a ⭐️ if you like this project and kindly support by suggesting changes by forking and pull requests.\n\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\nI would like to appreciate [Microverse](https://www.microverse.org/) for providing the resources and the platform for me to be a Professional full-stack developer.\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\u003c!-- ## ❓ FAQ (OPTIONAL) \u003ca name=\"faq\"\u003e\u003c/a\u003e\n\n\n- **[Are you sure that you are owner of this work]**\n\n  - [Yes,] --\u003e\n\n\n\u003c!-- \u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e --\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","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrempongdev%2Foop-school-library","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrempongdev%2Foop-school-library","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrempongdev%2Foop-school-library/lists"}