Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/m-anwar-hussaini/catalog-of-things
Catalog of Things, a versatile Ruby command-line application designed for efficient item management. This powerful tool allows you to easily organize and categorize groups of items. It allows you to create, and store item data effortlessly. With the ability to save your information in JSON files, you can ensure data persistence and accessibility.
https://github.com/m-anwar-hussaini/catalog-of-things
command-line database gem json rspec rubocop ruby
Last synced: 9 days ago
JSON representation
Catalog of Things, a versatile Ruby command-line application designed for efficient item management. This powerful tool allows you to easily organize and categorize groups of items. It allows you to create, and store item data effortlessly. With the ability to save your information in JSON files, you can ensure data persistence and accessibility.
- Host: GitHub
- URL: https://github.com/m-anwar-hussaini/catalog-of-things
- Owner: M-Anwar-Hussaini
- Created: 2023-09-09T12:09:24.000Z (about 1 year ago)
- Default Branch: develop
- Last Pushed: 2023-09-14T19:35:06.000Z (about 1 year ago)
- Last Synced: 2024-10-10T09:41:15.345Z (27 days ago)
- Topics: command-line, database, gem, json, rspec, rubocop, ruby
- Language: Ruby
- Homepage:
- Size: 625 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Catalog Of Things
# ๐ Table of Contents
- [๐ About the Project](#about-project)
- [๐ Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [๐ป Getting Started](#getting-started)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [Run tests](#run-tests)
- [Deployment](#deployment)
- [๐ฅ Authors](#authors)
- [๐ญ Future Features](#future-features)
- [๐ค Contributing](#contributing)
- [โญ๏ธ Show your support](#support)
- [๐ Acknowledgements](#acknowledgements)
- [๐ License](#license)**Catalog Of Things** is a Ruby-based project that is combined of several classes like `Item` with its relevant children such as `Book`, `MusicAlbum`, `Movie`, and `Game`, which is related together using _Inheritance_ relationship. The **Item** class is also related some other classes like `Author`, `Genre`, `Source`, and `Label` that has the **composition** one-to-many relationship.
The project is a command-line project that prompts the user to first create the characteristics of an item and based on them, and then prompt the user to create the item of its desired substance.
- โ **Ruby**.
- โ **PostgresSQL**
- โ **Rubocop**
- โ **Rspec**- **Create 4 main characteristics for the item.**
- **Link the Item with some classes using composition relationship.**
- **Relate 4 other subitem for the Item class using inheritance.**
- **Run the program using a command-line interface.**## Vedio Represntation
- In this [vedio](https://youtu.be/zlEN-XIbZO4?si=7LJvpYQOOXANHLet) you can see that how the project works.To get a local copy up and running, follow these steps.
1. Clone or download this repository in your desired local directory.
```sh
git clone https://github.com/M-Anwar-Hussaini/Catalog-Of-Things.git
```2. Navigate to the project directory
```sh
cd Catalog-Of-Things
```3. Open a terminal or command-prompt interface on the directory.
4. Install the dependencies of project
```sh
bundle install
```5. Run the main file
```
ruby main.rb
```### Prerequisites
In order to run this project you need:
- [ ] [Ruby installer](https://www.ruby-lang.org/en/downloads/)
- [ ] Command Line interface.### Setup
Clone this repository to your desired folder:
```sh
cd my-folder
git clone https://github.com/M-Anwar-Hussaini/Catalog-Of-Things.git
```### Install
Install this project with:
- โ Rubocop
```sh
cd my-project
gem install Rubocop
```- โ Rspec
```sh
cd my-project
gem install rspec
```### Run tests
To run tests, run the following command go to the root directory of the project:
```sh
rspec spec/*.rb
```๐ค **Mohammad Anwar Hussaini**
- GitHub: [@M-Anwar-Hussaini](https://github.com/M-Anwar-Hussaini/)
- LinkedIn: [Anwar Hussaini](https://www.linkedin.com/in/anwar-hussaini/)๐ค **Abdelaziz Mahdi**
- GitHub: [@Abdelaziz-Mahdi](https://github.com/Abdelaziz-Mahdi)
- Twitter: [@_AbdelazizMahdi](https://twitter.com/_AbdelazizMahdi)
- LinkedIn: [in/abdelaziz-mahdi](https://www.linkedin.com/in/abdelaziz-mahdi)๐ค **lRebornsl**
- GitHub: [@lRebornsl](https://github.com/lRebornsl)
- Twitter: [@RebornsDev](https://twitter.com/RebornsDev)
- LinkedIn: [Anthony Vรกsquez](https://www.linkedin.com/in/avvm98/)- [ ] **Create GUI interface**
- [ ] **Make more validations on the methods.**
- [ ] **Provide more features using user story.**Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](https://github.com/M-Anwar-Hussaini/Catalog-Of-Things/issues).
If you like this project kindly drop a star to this project.
I would like to thank Microverse for providing the opportunity to creat this project.
This project is [MIT](./MIT.md) licensed.