An open API service indexing awesome lists of open source software.

https://github.com/shafiuyushawu/school-liabrary

OOP school library is university libray tool that records what books are in the library and who borrows them. The app allows users to add new students or teachers, add new books, save records of who borrowed a given book and when.
https://github.com/shafiuyushawu/school-liabrary

classes-and-inheritance classes-and-objects composition inheretence oop-principles polymorphism rspec-testing ruby ruby-oop

Last synced: about 1 year ago
JSON representation

OOP school library is university libray tool that records what books are in the library and who borrows them. The app allows users to add new students or teachers, add new books, save records of who borrowed a given book and when.

Awesome Lists containing this project

README

          

School Library

# πŸ“—Table of Contents

- [πŸ“– School-Library](#about-project)
- [πŸ›  Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [πŸ’» Getting Started](#getting-started)
- [Setup](#setup)
- [Prerequisites](#prerequisites)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [πŸ‘₯ Authors](#authors)
- [πŸ”­ Future Features](#future-features)
- [🀝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [πŸ™ Acknowledgements](#acknowledgements)
- [πŸ“ License](#license)

# πŸ“– School Library

This is a ruby program that uses Object Oriented Program approach to create class `Person` with attributes and its sub classes `Teacher` and `Student` that inherents the objects of the class `Person`.

## πŸ›  Built With

- **Ruby**

### Key Features
- Person class
- Student class
- Teacher class

(back to top)

## Getting Started

To get a local copy up and running follow these simple example steps.

### Prerequisites

> You need the following tools be installed in your computer:

> - [Git](https://www.linode.com/docs/guides/how-to-install-git-on-linux-mac-and-windows/)
> - [Ruby](https://github.com/microverseinc/curriculum-ruby/blob/main/simple-ruby/articles/ruby_installation_instructions.md)
> - IDE
> - Etc

### Setup

Clone this repository to your desired folder:

```sh
cd my-prefered-folder

git clone https://github.com/shafiuyushawu/school-liabrary.git

```

### Install

Install this project with:

```sh
cd school-liabrary

bundle install
```

### Usage

To run the project, execute the following command:

```sh
ruby main.rb
```

### Run tests

To run tests, run the following command:

```sh
rspec spec/
```

## πŸ‘₯ Authors

πŸ‘€ **Shafiu Ibn Yushawu**

- GitHub: [@shafiuyushawu](https://github.com/shafiuyushawu)
- Twitter: [@shafiuyushawu](https://twitter.com/shafiuyushawu)
- LinkedIn: [shafiuyushawu](https://linkedin.com/in/shafiuyushawu)

πŸ‘€ **Nicholas Kwamena Amissah**

- GitHub: [Nicholas Amissah](https://github.com/atok624)
- Twitter: [Nicholas Amissah](https://twitter.com/MysticalAmissah)
- LinkedIn: [Nicholas Amissah](https://www.linkedin.com/in/nicholas-amissah-153b09154)

(back to top)

## πŸ”­ Future Features

- **[Prepare base Decorator]**
- **Turn Person class to Nameable]**
- **[Prepare CapitalizeDecorator and TrimmerDecorator]**

(back to top)

## 🀝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the [issues page](https://github.com/shafiuyushawu/school-liabrary/issues).

## ⭐️ Show your support

Give a ⭐ if you like this project!

## πŸ™ Acknowledgments

* Thanks to the Microverse team for the great curriculum.

## πŸ“ License

This project is [MIT](./License) licensed.

(back to top)