https://github.com/frempongdev/oop-school-library
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.
https://github.com/frempongdev/oop-school-library
database oop oop-in-ruby orm postgresql relational-databases ruby sql
Last synced: 26 days ago
JSON representation
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.
- Host: GitHub
- URL: https://github.com/frempongdev/oop-school-library
- Owner: frempongdev
- License: mit
- Created: 2023-04-24T21:37:58.000Z (about 2 years ago)
- Default Branch: dev
- Last Pushed: 2023-05-04T19:51:03.000Z (about 2 years ago)
- Last Synced: 2025-03-30T02:33:23.747Z (about 2 months ago)
- Topics: database, oop, oop-in-ruby, orm, postgresql, relational-databases, ruby, sql
- Language: Ruby
- Homepage:
- Size: 42 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
School Library
# 📗 Table of Contents
- [📖 About the Project](#about-project)
- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [🚀 Live Demo](#live-demo)
- [💻 Getting Started](#getting-started)
- [Setup](#setup)
- [Prerequisites](#prerequisites)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [Deployment](#triangular_flag_on_post-deployment)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [❓ FAQ (OPTIONAL)](#faq)
- [📝 License](#license)**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.
- **[This project has a Person class with name, age, etc properties that serves as a super class for Student and Teacher classes]**
- **[This project has a Student class that inherits from Person class]**
- **[This project has a Teacher class that inherits from Person class]**
- **[This project uses Gitflow]**
**[Refactor code to follow SOLID principles]**
- **[Preserve data in json files]**To get a local copy up and running, follow these steps.
### Prerequisites
- In order to run this project you need:
- [git](https://git-scm.com/downloads): A tool for managing source code
- [Visual Studio Code](https://code.visualstudio.com/): A source code editor### Setup
- Clone this repository to your desired folder: https://github.com/frempongdev/OOP-school-library.git
- Run bundle install to install the dependencies.### Install
Install this project with:- cd school-library
- ubuntu version 22 or higher### Usage
To run the project, execute the following command:- ruby person.rb
- ruby student.rb
- ruby teacher.rb### Run tests
To run tests, run the following command:
- Run robocop .### Deployment
You can deploy this project using:
- Github pagesGithub pages
follow these steps for example
👤 **Frempong**
- GitHub: [@frempongdev](https://github.com/frempongdev)
- Twitter: [@knobaddy](https://twitter.com/knobaddy)
- LinkedIn: [Samuel knower Amankwaa-Frempong](https://www.linkedin.com/in/frempongdev/)👤 **Jonas Nuta Wallah**
- GitHub: [@Jonas-45](https://github.com/jonas-45)
- Twitter: [@twitterhandle](https://twitter.com/twitterhandle)
- LinkedIn: [LinkedIn](https://linkedin.com/in/linkedinhandle)## 🔭 Future Features
- [Classromm Class implementation]
- [Book Class implementation]
- [Console app navigation and functionalities]Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](../../issues/).
- Give a ⭐️ if you like this project and kindly support by suggesting changes by forking and pull requests.
I 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.
This project is [MIT](./LICENSE) licensed.