1 option
Craft GraphQL APIs in Elixir with Absinthe : flexible, robust services for queries, mutations, and subscriptions / Bruce Williams, Ben Wilson.
- Format:
- Book
- Author/Creator:
- Williams, Bruce (Software engineer), author.
- Wilson, Ben (Computer engineer), author.
- Series:
- Pragmatic programmers.
- Pragmatic programmers
- Language:
- English
- Subjects (All):
- Application program interfaces (Computer software).
- Physical Description:
- 1 online resource (1 volume) : illustrations.
- Edition:
- 1st edition
- Place of Publication:
- Raleigh, North Carolina : The Pragmatic Bookshelf, [2018]
- System Details:
- text file
- Summary:
- "Your domain is rich and interconnected, and your API should be too. Upgrade your web API to GraphQL, leveraging its flexible queries to empower your users, and its declarative structure to simplify your code. Absinthe is the GraphQL toolkit for Elixir, a functional programming language designed to enable massive concurrency atop robust application architectures. Written by the creators of Absinthe, this book will help you take full advantage of these two groundbreaking technologies. Build your own flexible, high-performance APIs using step-by-step guidance and expert advice you won't find anywhere else. GraphQL is a new way of structuring and building web services, and the result is transformational. Find out how to offer a more tailored, cohesive experience to your users, easily aggregate data from different data sources, and improve your back end's maintainability with Absinthe's declarative approach to defining how your API works. Build a GraphQL-based API from scratch using Absinthe, starting from core principles. Learn the type system and how to expand your schema to suit your application's needs. Discover a growing ecosystem of tools and utilities to understand, debug, and document your API. Take it to production, but do it safely with solid best practices in mind. Find out how complexity analysis and persisted queries can let you support your users flexibly, but responsibly too. Along the way, discover how Elixir makes all the difference for a high performance, fault-tolerant API. Use asynchronous and batching execution, or write your own custom add-ons to extend Absinthe. Go live with subscriptions, delivering data over websockets on top of Elixir (and Erlang/OTP's) famous solid performance and real-time capabilities. Transform your applications with the powerful combination of Elixir and GraphQL, using Absinthe."
- Contents:
- Cover
- Table of Contents
- Acknowledgements
- Introduction
- About This Book
- About the Code
- Online Resources
- Part I-Build a GraphQL API
- 1. Meet GraphQL
- On the Client
- On the Server
- Absinthe and the Tech Stack
- Moving On
- 2. Building a Schema
- Preparing the Application
- Our Schema Module
- Making a Query
- Running Our Query with GraphiQL
- Testing Our Query
- 3. Taking User Input
- Defining Field Arguments
- Providing Field Argument Values
- Using Enumeration Types
- Modeling Input Objects
- Marking Arguments as Non-Null
- Creating Your Own Scalar Types
- 4. Adding Flexibility
- Organizing a Schema
- Understanding Abstract Types
- Using Named Fragments
- 5. Making a Change with Mutations
- Defining a Root Mutation Type
- Building the Resolver
- Handling Mutation Errors
- 6. Going Live with Subscriptions
- Setting Up Subscriptions
- Event Modeling
- Submitting Subscriptions
- Testing Subscriptions
- Subscription Triggers
- Part II-Publish Your API
- 7. Resolution Middleware
- Our First Module
- Applying Middleware
- Setting Defaults
- 8. Securing with Authentication and Authorization
- Logging In
- Using the Execution Context
- Securing Fields
- Structuring for Authorization
- 9. Tuning Resolution
- Understanding the Problem
- Using Built-in Plugins
- Discovering Dataloader
- Part III-Use Your API
- 10. Driving Phoenix Actions with GraphQL
- Building an Action
- Handling Input
- Complex Queries
- 11. Integrating with the Frontend
- Starting Simple
- Choosing a Framework
- Using Apollo Client
- Using Relay
- Wrapping Up
- A1. GraphQL Types
- Object
- InputObject
- Enum
- Interface
- Union
- Scalar Types
- Special Types
- Bibliography
- Index.
- - SYMBOLS -
- - A -
- - B -
- - C -
- - D -
- - E -
- - F -
- - G -
- - H -
- - I -
- - J -
- - K -
- - L -
- - M -
- - N -
- - O -
- - P -
- - Q -
- - R -
- - S -
- - T -
- - U -
- - V -
- - W -
- - Y -.
- Notes:
- Skill level this book [Intermediate]-Expert.
- "Your Elixir source"--Cover.
- Includes bibliographical references.
- Description based on print version record.
- ISBN:
- 9781680505931
- 1680505939
- 9781680505924
- 1680505920
- 9781680505948
- 1680505947
- 9781680502558
- 1680502557
- OCLC:
- 1037354598
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.