Skip to content

Instantly share code, notes, and snippets.

@xavxyz
Last active March 10, 2017 12:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save xavxyz/99604889b68afa39543cd2b6902a70d7 to your computer and use it in GitHub Desktop.
Save xavxyz/99604889b68afa39543cd2b6902a70d7 to your computer and use it in GitHub Desktop.

Title ideas

The super powers of your own toolkit based on Apollo tools

Talk abstract

Apollo tools for React & Node environment give you ability to powerful create apps powered with a GraphQL data layer. In creating your own re-usable toolkit on top of these tools, it allows you to build great products even more simply.

Context

State of the art

Apollo client & server flexible tools provide great developer experience to build apps with GraphQL.

Problem statement

Though at some point, you often end up writing almost the same things for each data domain of your app, both on the front-end or back-end.

Assumptions

How would it be to have easy-to-use & re-usable utilities built on top of the Apollo tools? Building a new feature would lead to significant focus in favor of the creation aspect compared to the configuration aspect.

Teaser

Why should you attend this talk?

This talk shows you how adopting a toolkit made of useful abstractions on top of powerful libraries helps for building even greater products.

Are you building apps with React & Apollo Client?

You will discover how to wire up useful React higher order components to ease the data loading in your UI components.

Handling pagination in complex lists queries now takes more a couple of lines. Extending fragments on the fly for particular tricky mutations becomes painless.

Do you power back-ends structures with a Node GraphQL Server?

You will learn how to generate common CRUD operations automatically with specific room for custom logic.

You hook into these operations to add features such as domain-specific validations, pre-operation document enhancements or non-blocking asynchronous tasks after the action is done.

Notes for the GraphQL Conf CFP Reviewers

Hey, I'm Xavier ๐Ÿ‘‹

I'm passionate about open-source, and I build apps for early-stage startups as a freelance developer for a living. I use GraphQL thanks to the Apollo tools everyday.

I'm the maintainer of two Apollo-related open-source projects:

Hack, learn, make ๐Ÿš€

We recently migrated Telescope from the classic Meteor pub/sub system to a complete GraphQL integration using Apollo tools. The project is evolving to become a toolkit of components and packages that helps you quickly build web apps, both on the front-end and back-end.

These GraphQL-related projects, along my job, have taught me a lot about how to ease the life of developers & provide a great developer experience. I believe that the utilities built along the way in these projects would benefit a lot products builders using (React / Node) + GraphQL.

Talk structure approach ๐Ÿค”

The talk would be articulated around the concept of the different utilities suggested in the Teaser part, extracted from their codebase and shown in an "agnostic" way. The base explanation of an utility would be:

while working on GENERIC_APP_FEATURE using APOLLO_TOOL, you face PROBLEM

โžก๏ธ you solve PROBLEM thanks to a FLEXIBLE_SOLUTION built on top of APOLLO_TOOL, building GENERIC_APP_FEATURE is no more a pain.

For example:

while working on different complex list components using the graphql HOC, you face writing every time the pagination, filtering & updating logic

โžก๏ธ you solve writing every time the pagination, filtering & updating logic thanks to a re-usable higher order component introducing a principled structured approach to deal with list loading built on top of the graphql HOC, building different complex list components is no more a pain.

๐Ÿ™Œ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment