ferry
ferry copied to clipboard
Stream-based strongly typed GraphQL client for Dart
⚠️ Notice: Looking for maintainers
While we are using this package in our own production applications, we don't have the resources to maintain the project beyond our immediate needs. If anyone would like to help maintain the project, we'd be happy to support and empower wherever possible.
A simple, powerful GraphQL Client for Flutter and Dart
Documentation 📖
Features
- ✅ Fully Typed: work faster and safer with compile time checks and IDE autocomplete, including fully typed Cache reads and writes.
- 🔄 Built-In Code Generators: automatically generated immutable data classes for all your GraphQL Operations and Fragments, based on your schema.
- 🌐 Customizable Network Interface: highly customizable network interface using
gql_link, allowing you to compose and extendLinks. - ✨ Normalized Optimistic Cache: keep data in sync with cache normalization and update your UI instantly with optimistic data.
- 💾 Multiple Data Stores: extensible
Storeinterface with built-inMemoryStoreandHiveStore(which useshivefor offline persistence). - 📄 Refetch & Pagination: easily update responses with new data or combine multiple responses, allowing for seamless pagination.
- 📱 Flutter Widgets: Widgets for Queries, Mutations, and Subscriptions, available out of the box.
Packages
This repo is a monorepo for ferry and related packages.