https://github.com/jeffreyquan/moovi
A movie database using Ruby on Rails
https://github.com/jeffreyquan/moovi
bootstrap postgresql ruby-on-rails tmdb-api
Last synced: 2 months ago
JSON representation
A movie database using Ruby on Rails
- Host: GitHub
- URL: https://github.com/jeffreyquan/moovi
- Owner: jeffreyquan
- Created: 2019-11-01T04:58:44.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-19T15:37:19.000Z (over 3 years ago)
- Last Synced: 2025-01-27T14:48:41.665Z (over 1 year ago)
- Topics: bootstrap, postgresql, ruby-on-rails, tmdb-api
- Language: Ruby
- Homepage: https://moovi-app.herokuapp.com/
- Size: 25.1 MB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 30
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Moovi - A Movie App
## Table of Contents
* [Introduction](#introduction)
* [How to get started](#how-to-get-started)
* [Motivation](#motivation)
* [Technologies](#technologies)
* [Key Features](#key-features)
* [Learnings](#learnings)
* [Acknowledgement](#acknowledgement)
* [Future Developments](#future-developments)
* [Screenshots](#screenshots)
This project is a web app that allows users to make lists of actors, directors and movies, which can be shared with everyone or private. It utilises The Movie DB's API. Check out their awesome [website](https://www.themoviedb.org/?language=en-US).
Feel free to test out my app [here](https://moovi-app.herokuapp.com/). Make sure to create an account to start making lists.
Feel free to clone this repository.
To run locally, run the following in the root directory in the terminal:
1. `npm install`
2. `bundle install`
3. `rails db:create`
4. `rails db:migrate`
5. `rails db:seed`
6. `rails s`
The aim of this project was to deliver an app that:
* Implemented at least 3 models, with associations
* Is a CRUD system in Rails
* Handles invalid data
* Uses Gems
* Has basic authentication and authorisation
* Is deployed to [Heroku](https://www.heroku.com/)
This was my second project at General Assembly's Software Engineering Immersive course at Sydney.
* Ruby on Rails
* [Bootstrap](https://getbootstrap.com/)
* SCSS
* JavaScript
* jQuery
* [TMDB's API](https://www.themoviedb.org/documentation/api)
## Gems
* [PgSearch](https://github.com/Casecommons/pg_search) - added search functionality to the app for full and partial text
* [httparty](https://github.com/jnunemaker/httparty) - used with TMDB's API
* Bcrypt - for user authentication
## Special Icons
* [Font Awesome](https://fontawesome.com/)
* **Discovery home page** - explore movies, actors or directors you've never seen before.
* **Custom lists** - create custom lists, each with one of the following categories: movies, actors or directors. These can be shared with everyone or private.
* **Adding movies from TMDB** - simply use the search bar in the movies page and you can add movies from TMDB, which will include the director's profile and some of the casts.
* **Search** - allows users to search the site for partial matches to their query.
* **Associated content** - navigate to any movie, actor or director, you'll be able to see related content, such as trailers and other movies.
* Model-View-Controller in the context of Ruby on Rails
* Manipulation of hashes and arrays in Ruby
* Use of multiple models and associations
* Styling using Bootstrap
* Form creation and validation
* Using and navigating TMDB's API
* @amandachau36 - for helping me with deployment to Heroku and seeding the database on the platform
* @anapgsilva - for showing me how to implement full text PgSearch and navigate APIs
* @aleksanderbrymora - for helping me with implementing the search panel in the navigation bar
* [TDMB](https://www.themoviedb.org/?language=en-US) - for their user-friendly API and incredible data
* **Filters** - adding filters for movies (e.g. year 2000 onwards) to allow for easier navigation
* **Reviews and Ratings** - adding a reviews and ratings section where users can post their reviews and rate the movies out of five stars.
#### Home

#### Movies

#### Actors

#### Directors

#### Genres

#### Public Lists

#### TMDB Search Results
