DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
  1. DZone
  2. Data Engineering
  3. Databases
  4. Graphcool, the GraphQL Backend Development Framework

Graphcool, the GraphQL Backend Development Framework

GraphQL allows you to query data in the data-heavy age. It's backed and used by Facebook, but is new and still has tooling gaps. GraphCool aims to solve this.

Chris Ward user avatar by
Chris Ward
CORE ·
Nov. 27, 17 · Interview
Like (4)
Save
Tweet
Share
5.70K Views

Join the DZone community and get the full member experience.

Join For Free

GraphQL burst into developer’s public sphere in 2015 and in two short years, the data query language from Facebook that sought to create an alternative to REST APIs gained a massive amount of popularity. My experiments found it promising and interesting, but it was confusing to understand the steps to production and it was lacking in certain tooling.

I had encountered Graphcool around Berlin, as they organize and sponsor the community meetup, and I interviewed their CEO Johannes Schickling about what problem the company intended to solve and how.

A GraphQL Backend Development Framework

Graphcool helps you create and manage a database backend for GraphQL-powered applications, supplying permissions, mapping, subscriptions, a management UI, and a CRUD API for your data. You can use their hosted solution on AWS or self-host using Docker containers.

For example, this GraphQL type definition defines a simple article:

type Post @model {
  id:ID! @isUnique    # read-only(managed by Graphcool)
  createdAt: DateTime! # read-only(managed by Graphcool)
  updatedAt: DateTime! # read-only(managed by Graphcool)

  description:String!
  imageUrl:String!
}

And after a quick graphcool deploy command, Graphcool represents this as:

Your data in the GraphCool backend

Then you can use the Graphcool playground (with the graphcool playground command) to try queries that interact directly with your application and the underlying data.

Get all posts

Create new post

From here, you can use the API endpoints provided and connect applications to it. This means you can switch from endpoint to endpoint, for example, emulating development, staging, and production environments.

Under the hood, Graphcool stores your data in a SQL database. This is AWS Aurora for hosted clusters and MySQL for your own Docker-based installations. Emulating ORM-based frameworks such as Rails and Laravel, Graphcool supports migrations, allowing you to change your GraphQL schema over time. The process is the same as deploying your initial schema, and many of the principles relating to migrations apply, i.e. deleting or changing the field type if they have existing data might be tricky, and consider how this will affect your application.

There are a few other features I’ve not mentioned, so listen to the interview, read the documentation, and see how Graphcool could fit into your next project.

GraphQL Framework

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Public Cloud-to-Cloud Repatriation Trend
  • Spring Boot Docker Best Practices
  • Project Hygiene
  • Fraud Detection With Apache Kafka, KSQL, and Apache Flink

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: