qora_flutter 1.1.0 copy "qora_flutter: ^1.1.0" to clipboard
qora_flutter: ^1.1.0 copied to clipboard

A Flutter implementation for Qora, bringing powerful async state management, automatic caching, and offline-first capabilities to the widget tree.

Changelog #

All notable changes to this project will be documented in this file.

1.1.0 - 2026-06-04 #

Changed #

  • Bump version to 1.1.0 to align with qora core package for the v1.1.0 release.

Unreleased #

1.0.0 - 2026-06-01 #

Changed #

  • Bump version to 1.0.0 to align with qora core package for the v1.0.0 release.

0.8.0 - 2026-03-01 #

Changed #

  • Updated dependency to qora: ^0.8.0 : enables PersistQoraClient, StorageAdapter, QoraSerializer, and the full persistence layer introduced in core 0.8.0

0.7.0 - 2026-03-03 #

Added #

  • InfiniteQueryBuilder<TData, TPageParam> : StatefulWidget that manages the full infinite-query lifecycle: creates an InfiniteQueryObserver on mount, fetches the first page, subscribes to all state transitions, and disposes cleanly; auto-refetches on InfiniteInitial (external invalidation); accepts queryKey, fetcher, options, builder, client, and enabled
  • InfiniteQueryController<TData, TPageParam> : stable handle passed to the builder with fetchNextPage(), fetchPreviousPage(), and refetch(); safe to capture in scroll listeners and RefreshIndicator.onRefresh

0.6.0 - 2026-03-02 #

Added #

  • NetworkStatusBuilder : low-level widget that subscribes to the ConnectivityManager stream and rebuilds on every NetworkStatus transition; accepts optional child to avoid rebuilding expensive sub-trees
  • NetworkStatusIndicator : high-level wrapper that overlays an offline banner on NetworkStatus.offline; built-in default banner (wifi-off icon, "Offline mode" text, no Material dependency); customisable via offlineBanner or full builder escape-hatch
  • QoraScope.connectivityManagerOf(context) : static method exposing the active ConnectivityManager to descendant widgets; used internally by NetworkStatusBuilder
  • QoraMutationBuilder : now injects isOnline callback and offlineMutationQueue from QoraClient into MutationController automatically
  • QoraBuilder : builder signature extended to three arguments (BuildContext, QoraState<T>, FetchStatus); subscribes to client.watchFetchStatus(key) alongside state stream; catches QoraOfflineException silently (handled via FetchStatus.paused)

Changed #

  • FlutterConnectivityManager : now a pure signal provider; constructor takes no arguments; removed QoraClient dependency and direct invalidateWhere() call; all reconnect logic delegated to QoraClient.attachConnectivityManager()
  • QoraScope : calls client.attachConnectivityManager(cm) after connectivityManager.start() in initState; exposes manager via _InheritedQoraScope

0.5.0 - 2026-03-01 #

Changed #

  • Updated dependency to qora: ^0.5.0 : enables PersistQoraClient, StorageAdapter, QoraSerializer, and the full persistence layer introduced in core 0.5.0

0.4.0 - 2026-02-28 #

Changed #

  • Updated dependencies to qora: ^0.4.0 in qora_flutter package
  • Updated README and documentation to reflect new version and features

0.3.0 - 2026-02-25 #

Added #

  • MutationBuilder<TData, TVariables, TContext> : StatefulWidget that creates and manages a MutationController internally; the builder receives the current MutationState and a mutate(variables) callback
    • mutator parameter (mirrors fetcher in QoraBuilder) : the async function performing the write
    • options parameter : MutationOptions with onMutate / onSuccess / onError / onSettled lifecycle hooks
    • metadata parameter : optional Map<String, Object?>? forwarded to every MutationEvent; attach domain context (e.g. {'category': 'auth', 'screen': 'login'}) visible in DevTools without modifying the core schema
    • Rebuilds on every state transition; controller is disposed automatically on widget unmount
    • Recreates the controller if mutator, options, or metadata identity changes across widget rebuilds
    • Passes QoraScope.maybeOf(context) as tracker automatically; safe to use without a QoraScope ancestor (standalone mode, no DevTools wiring)

0.2.0 - 2026-02-22 #

Added #

  • FlutterConnectivityManager : invalidates all queries when the device reconnects after being offline; powered by connectivity_plus (bundled as a direct dependency)
  • FlutterConnectivityManager and FlutterLifecycleManager exported from the main qora_flutter library barrel
  • QoraScope now accepts an optional connectivityManager parameter alongside lifecycleManager

Changed #

  • queryKey accepts Object : both QoraBuilder and QoraStateBuilder now accept a plain List<dynamic> or a QoraKey; no wrapping in QoraKey(...) required
  • FlutterLifecycleManager.minBackgroundDuration replaces refetchInterval; configures the minimum duration the app must be in background before queries are invalidated on resume (default: 5 s)
  • Internal refetch mechanism uses client.invalidateWhere((_) => true) instead of direct stream manipulation; active QoraBuilder widgets detect the resulting Loading(previousData: …) state and re-fetch automatically

0.1.0 - 2026-02-11 #

Added #

  • QoraScope (InheritedWidget) : provides QoraClient to the widget tree
  • QoraBuilder<T> : fetches on mount, subscribes to all state transitions, re-fetches on invalidation, and cleans up on dispose
  • QoraStateBuilder<T> : observe-only variant; subscribes to state without triggering a fetch
  • BuildContext extensions: context.qora, context.qoraOrNull
  • FlutterLifecycleManager : invalidates all queries when the app resumes after a configurable background pause
1
likes
160
points
37
downloads

Documentation

Documentation
API reference

Publisher

verified publishermeragix.dev

Weekly Downloads

A Flutter implementation for Qora, bringing powerful async state management, automatic caching, and offline-first capabilities to the widget tree.

Homepage
Repository (GitHub)
View/report issues
Contributing

License

MIT (license)

Dependencies

connectivity_plus, flutter, qora

More

Packages that depend on qora_flutter