Skip to content

Latest commit

 

History

History
30 lines (15 loc) · 1.03 KB

File metadata and controls

30 lines (15 loc) · 1.03 KB

GraphQL

source


  • GraphQL is a query language and execution engine originally created at FB in 2012 to describe capabilities and requirements of data models for client-server applications.

  • It became open standard since 2015.

  • Created to provide flexible and intuitive syntax and system for describing data requirements and interactions at clients. Paired with fast iteration of allowing client requirements at Server with flexible backward compatibility.

Design Principles

  • Hierarchical; query is shaped just like data required

  • Product centric; frontend leads the requirement at backend

  • Strong-typing; given a query tools can ensure it is syntactically correct and valid in GraphQL type system

  • Client-specified queries; data to be sent is specified by client and not decided by server

  • Introspective; server's type must be queryable by GraphQL language itself and described in spec