This device is not compatible.

PROJECT


Integrate GraphQL to the Ruby on Rails Application

Learn to create a bill splitting application using Ruby on Rails and GraphQL. This application will allow users to create groups and add their bills. The application will simplify those bills and record the amount owed to or by each group member.

Integrate GraphQL to the Ruby on Rails Application

You will learn to:

Create applications with Ruby on Rails.

Create and use migrations and associations.

Assess the database using GraphQL queries.

Update the database using GraphQL mutations.

Skills

Web Frameworks

Database Design

GraphQL Query Writing

Prerequisites

Good understanding of Ruby

Good understanding of the Rails framework

Good understanding of the GraphQL queries and mutations

Technologies

Ruby

GraphQL

PostgreSQL

Ruby on Rails

Project Description

In this project, we’ll create a simple application that allows users to create groups among themselves. The users will be able to split bills among the members of a group using this application. We’ll use Ruby on Rails along with GraphQL to create this application to split bills among different groups. Ruby on Rails is famous for its fast development and ease of debugging, and GraphQL is widely used for its efficient and precise data fetching with strong-typed schema.

First, we'll test and embed multiple GraphQL queries. Then, we'll execute some simple GraphQL mutations. After that, we'll implement the queries and mutations for the models that are interdependent on each other. In the end, we'll write some complex mutations and queries using connected nodes (a mediator model depending on more than one model) in GraphQL.

This project will help us develop skills to build applications in Ruby on Rails, which is very popular for developing SaaS applications and using GraphQL with it, which can be utilized within that SaaS application to expose its data and functionality through a GraphQL API.

Project Tasks

1

Get Started

Task 0: Initial Setup

2

GraphQL Queries

Task 1: Fetch All Users

Task 2: Fetch and Display All Groups

3

GraphQL Mutations

Task 3: Create Groups

4

GraphQL Relationships

Task 4: Create the Expense Model

Task 5: Add Users to the Groups

Task 6: Display the Users with the Groups

Task 7: Update the Create Group Form

5

Connecting Nodes in GraphQL

Task 8: Create Expense Object

Task 9: Show Group Details

Task 10: Create Equal Split Mutation

Task 11: Create Unequal Split Mutation

Task 12: Create Forms for Splitting Expenses

Task 13: Handle Equal Split Form

Task 14: Handle Unequal Split Form

Congratulations!