This is the capstone project of the fourth module in the Microverse program.
Check the below contents for further details about this project.
This repository is about a catalogue of different item types that the user can add or display.
There is one parent class Item and three children classes (Book / MusicAlbum / Game).
Three classes (Label / Genre / Author) have one to many association with Item class.
Built unit tests for implemented methods of seven classes (Item / Book / MusicAlbum / Game / Label / Genre / Author).
Created database tables for items data inside schema.sql file.
📌 Live Demo:
- Watch the project presentation from here
📌 Tech Stack:
- Application uses
Ruby - Unit tests run with
RSpec - Linting is done with
Rubocop - Schema file uses
PostgreSQL
📌 Key Features:
- User is given the option to either add new item or display a list
- Available item types to add (
book/music album/game) - Available list types to display (
books/albums/games/labels/genres/authors) - Adding any new item will require the use to select (
label/genre/author) form a list or create new ones - All items created by the user are stored in
jsonfiles and reloaded after restart
You can easily download or fork this repository and work on it immadiately!
📌 Prerequisites:
- You need
Rubylanguage &PostgreSQLdatabase installed
📌 Installation:
- To install all gem dependencies run
bundle install
📌 Development:
- Run
main.rbfile with
ruby main.rb
📌 Tests:
- To run unit tests navigate to
specsdirectory and run:
rspec . -f d
📌 Mahammad:
📌 Alexander:
📌 Austin:
Some additional features I may implement in the project:
- Use
Railsframework with this project - Implement better visual interface
Wish to contribute to this project?
Contributions, issues, and feature requests are more than welcome!
Feel free to check the issues page too.
Like this project? Show your support by starring!
I thank everyone at Microverse for guiding me through this project.
This project is MIT licensed.