funky

Malt Matcher is the brain-child of Cole Stephenson, where a group of 7 developers both collaborated on, and spearheaded different ends of the development process to create an app that centers around something we are all passionate about: BEER!

About This Project

We worked with a React Framework on the front-end and Ruby on Rails on the back-end, and on both sides, we implemented GraphQL to create this app to find the breweries that carried our brew of choice. The backend GraphQL API allows the client to access the full capabilities of the API data from a single end point.

We hope you enjoy our app while you're here! Please feel free to reach out to any of us! Interact with our live app here => https://maltmatcher.vercel.app/

Cheers!

Backend Table of Contents

Local Setup

This project requires:

  • Ruby 2.7.4
  • Rails 5.2.8.1

Setup Steps

  • Fork the repository
  • Clone the fork
  • Install gems and set up your database:
    • bundle install
    • rails db:create
    • rails db:migrate
  • Install Figaro
    • bundle exec figaro install
  • Update the application.yml file with ENV variables storing API keys for Mapquest API Documentation
  • Catalog Beer API Documentation (No API Key required)

Deployment

Interact with our live app here => https://maltmatcher.vercel.app/

Postman Examples

All GraphQL responses respond to POST /graphql requests only. Query information will need to be sent in the body of the request, as shown in the following GIFs.

1. Request/Response For Nearby Breweries That Have The Beer Style The User Is Searching For

Nearby Breweries

2. Request/Response For Nearby Breweries and All Of Their Beers Including The One Style Searched For

Brewery's Beers

3. With GraphQL The Front End Team Can Pick And Choose What Data They Want To See Utilizing The Same POST /graphql Request

Pick and choose attributes

Postman Demo - Nearby Brewery Beers Endpoint (Mock)

Run in Postman

Follow Postman Demo Instructions Below:

1. Select 'Postman for Web' or 'Postman for Mac'.
2. Select a any workspace then select 'Import'.
3. Click open the 'Nearby Breweries' collection then the 'POST Get Brewery with Location and Radius' call.
4. Above the blue 'Send' button ensure 'mock test' is selected as your environment.
5. Click the 'Send' button.
6. Check out the all the fun Breweries and their Beers in the response!
7. If you click the 'body' tab (which is next to the 'headers' tab), you can checkout our GraphQL query!

Technology

Heroku GraphQL

Database Schema

Schema

Contributors

Back End Team

Parker Thomson Bryan Shears Thiago Silverira Bryce Simonds
GitHub
LinkedIn
GitHub
LinkedIn
GitHub
LinkedIn
GitHub
LinkedIn

Front End Team

Cole Stephenson Jordan Farelli Andrew Miller
GitHub
LinkedIn
GitHub
LinkedIn
GitHub
LinkedIn



IMG_20221017_145209