Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.10.0

normalize

Normalisierung und Denormalisierung von GraphQL-Antworten in Dart

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
486.000
Likes
16
Pub-Punkte
130

Paket installieren

flutter pub add normalize

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das normalize-Paket bietet Hilfsmittel zur Normalisierung und Denormalisierung von GraphQL-Antworten in Dart und ermöglicht eine effiziente Datenverwaltung sowie Konsistenz im Cache. Es ist speziell für die nahtlose Integration mit dem Ferry-GraphQL-Client konzipiert und wandelt verschachtelte GraphQL-Daten in eine flache, normalisierte Struktur um, die Duplikate vermeidet und Aktualisierungen des Zustands vereinfacht. Dadurch wird die Leistung und Konsistenz bei der Verarbeitung komplexer Abfragen und Mutationen verbessert. Das Paket unterstützt alle wichtigen Plattformen wie Android, iOS, Web, macOS, Windows und Linux.

Anwendungsfälle

  • Caching von GraphQL-Abfrageergebnissen
  • Verwaltung verschachtelter Datenstrukturen
  • Verbesserung der Effizienz bei Zustandsaktualisierungen
  • Synchronisieren des Client-Seiten-Zustands mit Server-Antworten
  • Leistungsoptimierung in großskaligen Anwendungen

Hauptmerkmale

  • Flache Daten-Normalisierung
  • Automatische Deduplizierung von Entitäten
  • Unterstützung für GraphQL-Objektbeziehungen
  • Integration mit dem Ferry-Client
  • Plattformübergreifende Kompatibilität

Geeignet für

  • GraphQL-Clients, die Ferry verwenden
  • Apps mit komplexen verschachtelten Daten
  • Entwickler, die Cache-Leistung priorisieren
  • Zustandsverwaltung mit normalisierten Daten
  • Full-Stack-Dart/Flutter-Anwendungen

Hinweise

  • Erfahrung mit GraphQL-Datenstrukturen erforderlich
  • Am besten mit Ferry oder ähnlichen Clients verwenden
  • Kann die anfängliche Einrichtungskomplexität erhöhen
  • Beschränkt auf GraphQL-spezifische Anwendungsfälle
  • Nicht geeignet für nicht-GraphQL-Datenformate

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

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

Kategorien

Abhängigkeiten

Abhängigkeiten 2 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden