A story about writing GraphQL (in PHP) ๐Ÿ™ˆ

Why?

Existing implementations are hard to extend

I wanted to understand how GraphQL works

An open source project with a lot of potential

Timeline

Feb 2018

Type system

Execution

Parser

Mar 2018

Schema builder

Introspection

Query validator

Schema validator

Schema extender

ย 

Apr 2018

Resolver registry

Parser optimization

Partial parsing

Fall 2018

Initial documentation

Source builder

Error handler

Resolver middleware

(Schema directives)

Metrics

417ย commits

65 closed issues

233ย closed pull requests

15k lines of code

21k lines of tests

Additions vs deletions

Lessons learned

Do not over-abstract

Test everything

Use static type checking

(if available)

Follow language best practices

Do not optimize your code too early on

The takeaway

Think beyond the existing implementations

Version 1.0

19th of October 2018

Christoffer Niska

Head of Tech / Digia

crisu83

We're recruiting

Thanks!

A story about writing GraphQL (in PHP) ๐Ÿ™ˆ

By Christoffer Niska

A story about writing GraphQL (in PHP) ๐Ÿ™ˆ

  • 328