Skip to content

gql-dart/ferry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
github-actions
Oct 23, 2024
e6300d7 Β· Oct 23, 2024
May 2, 2023
Mar 23, 2021
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
May 20, 2024
Apr 30, 2023
Oct 23, 2024
Sep 1, 2021
Jan 26, 2023
Feb 24, 2020
Aug 7, 2022
Apr 30, 2023
Apr 30, 2023

Repository files navigation

A simple, powerful GraphQL Client for Flutter and Dart

MIT License PRs Welcome Watch on GitHub Star on GitHub Watch on GitHub Discord

Documentation πŸ“–

Features

  1. βœ… Fully Typed: work faster and safer with compile time checks and IDE autocomplete, including fully typed Cache reads and writes.
  2. πŸ”„ Built-In Code Generators: automatically generated immutable data classes for all your GraphQL Operations and Fragments, based on your schema.
  3. 🌐 Customizable Network Interface: highly customizable network interface using gql_link, allowing you to compose and extend Links.
  4. ✨ Normalized Optimistic Cache: keep data in sync with cache normalization and update your UI instantly with optimistic data.
  5. πŸ’Ύ Multiple Data Stores: extensible Store interface with built-in MemoryStore and HiveStore (which uses hive for offline persistence).
  6. πŸ“„ Refetch & Pagination: easily update responses with new data or combine multiple responses, allowing for seamless pagination.
  7. πŸ“± Flutter Widgets: Widgets for Queries, Mutations, and Subscriptions, available out of the box.
  8. 🧈 Smooth: Run queries in a separate Isolate to free up resources on the UI thread

Packages

This repo is a monorepo for ferry and related packages.

Pub Package Description
version package:ferry Stream-based GraphQL Client
version package:ferry_cache Normalized, strongly typed, optimistic cache
version package:ferry_exec Strongly typed GraphQL execution interface
version package:ferry_flutter Flutter Widgets for GraphQL Operations
version package:ferry_generator Dart Type Generator for GraphQL Operations
version package:ferry_store Data Persistence for ferry's cache
version package:ferry_hive_store Hive implementation of ferry_store
version package:normalize Normalization / denormalization of GraphQL data