Movatterモバイル変換


[0]ホーム

URL:


Tweet this

About This Title

Pages: 302
Published: March 2018
ISBN: 9781680502558
In Print

Skill Level Meter

Craft GraphQL APIs in Elixir with Absinthe

Flexible, Robust Services for Queries, Mutations, and Subscriptions

by Bruce Williams and Ben Wilson

Your domain is rich and interconnected, and your API should be too.Upgrade your web API to GraphQL, leveraging its flexible queries toempower your users, and its declarative structure to simplify your code.Absinthe is the GraphQL toolkit for Elixir, a functional programminglanguage designed to enable massive concurrency atop robust applicationarchitectures. Written by the creators of Absinthe, this book will helpyou take full advantage of these two groundbreaking technologies. Buildyour own flexible, high-performance APIs using step-by-step guidance andexpert advice you won’t find anywhere else.


  • GraphQL Video Course
  • Unpacked: Full-Stack GraphQL with Absinthe, Phoenix, and React
  • Authors: Mike Clark and Nicole Clark

Want to see GraphQL at work in the context of a full-stack application?The Pragmatic Studio has a video course just for you! Learn how to puttogether an app using Phoenix on the backend, Absinthe for the GraphQLAPI, and React with Apollo on the frontend. You’ll come awayunderstanding how everything works together in harmony so you can buildyour own GraphQL app from start to finish.

These videos were technically reviewed by Bruce Williams so you knowyou’re learning techniques and practices based on real-worldexperiences. The course includes 4.5 hours of video, 17 animationsexploring key design elements, and all the source code.

Buy directly fromThe PragmaticStudio.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for$27.95 (USD)

Add to Cartwe accept visa, mastercard, amex, discover, paypal


Paperback Formats:

Please support indie bookstores!
Findindie bookstores in the U.S. Findindie bookstores around the world.


GraphQL is a new way of structuring and building web services, and theresult is transformational. Find out how to offer a more tailored,cohesive experience to your users, easily aggregate data from differentdata sources, and improve your back end’s maintainability withAbsinthe’s declarative approach to defining how your API works.

Build a GraphQL-based API from scratch using Absinthe, starting fromcore principles. Learn the type system and how to expand your schema tosuit your application’s needs. Discover a growing ecosystem of tools andutilities to understand, debug, and document your API. Take it toproduction, but do it safely with solid best practices in mind. Find outhow complexity analysis and persisted queries can let you support yourusers flexibly, but responsibly too. Along the way, discover how Elixirmakes all the difference for a high performance, fault-tolerant API. Useasynchronous and batching execution, or write your own custom add-ons toextend Absinthe. Go live with subscriptions, delivering data overwebsockets on top of Elixir (and Erlang/OTP’s) famous solid performanceand real-time capabilities.

Transform your applications with the powerful combination of Elixir andGraphQL, using Absinthe.

What You Need

To follow along with the book, you should have Erlang/OTP 20+ and Elixir1.5+ installed. The book will guide you through setting up a new Phoenix1.3 application using Absinthe.

Resources

Releases:

2020/04/23
P2.0
*Second Printing*For a complete list of updates and fixes, please see [errata](https://pragprog.com/titles/wwgraphql/errata).
2018/03/26
P1.0
First printing.
2018/03/15
B5.0
Production is complete. Now it’s on to layout and the printer.
2018/01/23
B4.0
*Added chapter 11, Integrating with the Frontend*Improvements to Going Live with Subscriptions, Securing with Authentication and Authorization, and Driving Phoenix Actions with GraphQL chapter code examples*Addressed errata*Now content-complete and headed to production

Contents & Extracts

  • Introduction
  • Build a GraphQL API
    • Meet GraphQL
      • On the Client
      • On the Server
      • Absinthe and the Tech Stack
      • Moving On
    • Building a Schema
      • Preparing the Application
      • Our Schema Module
      • Making a Queryexcerpt
      • Running Our Query with GraphiQL
      • Testing Our Query
      • Moving On
    • Taking User Inputexcerpt
      • Defining Field Arguments
      • Providing Field Argument Values
      • Using Enumeration Types
      • Modeling Input Objects
      • Marking Arguments as Non-Null
      • Creating Your Own Scalar Types
      • Moving On
    • Adding Flexibility
      • Organizing a Schema
      • Understanding Abstract Types
      • Using Named Fragments
      • Moving On
    • Making a Change with Mutations
      • Defining a Root Mutation Type
      • Building the Resolver
      • Handling Mutation Errors
      • Moving On
    • Going Live with Subscriptions
      • Setting Up Subscriptions
      • Event Modeling
      • Submitting Subscriptionsexcerpt
      • Testing Subscriptions
      • Subscription Triggers
      • Moving On
  • Publish Your API
    • Resolution Middleware
      • Our First Module
      • Applying Middleware
      • Setting Defaults
      • Moving On
    • Securing with Authentication and Authorization
      • Logging In
      • Using the Execution Context
      • Securing Fields
      • Structuring for Authorization
      • Moving On
    • Tuning Resolution
      • Understanding the Problem
      • Using Built-in Plugins
      • Discovering Dataloader
      • Moving On
  • Use Your API
    • Driving Phoenix Actions with GraphQL
      • Building an Action
      • Handling Input
      • Complex Queries
      • Moving On
    • Integrating with the Frontend
      • Starting Simple
      • Choosing a Framework
      • Using Apollo Client
      • Using Relay
      • Wrapping Up

Author

Bruce Williams is a polyglot technologist, speaker, and writerinterested in everything from learning type systems and writing parsersto designing UX. He is the CTO of CargoSense, a logistics intelligencecompany, and the co-creator of Absinthe, the GraphQL toolkit for Elixir.

Ben Wilson is a full-stack developer and leading member of theElixir community as an open source maintainer, contributor, andconference speaker. He is the back-end team lead at CargoSense and theco-creator of Absinthe.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for$27.95 (USD)

Add to Cartwe accept visa, mastercard, amex, discover, paypal


Paperback Formats:

Please support indie bookstores!
Findindie bookstores in the U.S. Findindie bookstores around the world.

Releases, Offers & More

Be the first to hear about our newest content, best promotions and upcoming events. Plus get25% off your next purchase.

Newsletter Sign Up

Related categories:

Related Titles:

Skill Level Meter

About This Title

Pages: 302
Published: March 2018
ISBN: 9781680502558
Edition: 1
In Print


[8]ページ先頭

©2009-2026 Movatter.jp