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

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.

Awesome Lists containing this project

README

        



logo

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

**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

### Tech Stack

### Key Features

- **[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]**

(back to top)

## 💻 Getting Started

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 pages

Github pages

follow these steps for example

(back to top)

## 👥 Author

👤 **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)

(back to top)

## 🔭 Future Features
- [Classromm Class implementation]
- [Book Class implementation]
- [Console app navigation and functionalities]

(back to top)

## 🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the [issues page](../../issues/).

(back to top)

## ⭐️ Show your support

- Give a ⭐️ if you like this project and kindly support by suggesting changes by forking and pull requests.

(back to top)

## 🙏 Acknowledgments

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.

(back to top)

## 📝 License

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

(back to top)