Skip to Content

FasqBeta

Resilient async state management for Flutter.
Hardware-backed security, zero-boilerplate serialization, and isolate-powered performance.

DocumentationQuick StartExamples

What is Fasq?

Fasq is a resilient data layer for Flutter. Unlike traditional fetchers, it treats network flakiness and backend failure as first-class citizens, protecting your app with built-in Circuit Breakers and Automatic Retries.

Inspired by TanStack Query but built for the Flutter ecosystem, Fasq ensures 120FPS performance by offloading heavy JSON parsing to background Isolates and offers Secure Storage integration for sensitive data.

Choose Your Integration

Hooks Adapter

Use Fasq with flutter_hooks for declarative data fetching. Perfect for functional components and modern Flutter development.

useQuery, useMutation, useQueryClient
Learn more →

Bloc Adapter

Integrate Fasq with flutter_bloc for structured state management. Ideal for complex applications with clear separation of concerns.

QueryCubit, MutationCubit
Learn more →

Riverpod Adapter

Leverage Fasq with flutter_riverpod for compile-safe providers and dependency injection. Great for scalable applications.

queryProvider, mutationProvider
Learn more →

Core Package

Use Fasq's core widgets directly for maximum flexibility. Perfect for custom implementations and learning the fundamentals.

QueryBuilder, MutationBuilder
Learn more →

Ecosystem & Companion Packages

Fasq Security

Enterprise-grade AES-GCM encryption and secure SQL persistence. Protects sensitive data with hardware-backed keys.

SecurityPlugin, SecureStorage
Learn more →

Serializer Generator

Automate type-safe query serialization using build_runner. Eliminate manual boilerplate for standard and custom data types.

@AutoRegisterSerializers
Learn more →

Coming Soon

Fasq Metrics

Standardized metrics exporting for Prometheus and OpenTelemetry. Track cache hits, latency, and failure rates.

In Development

Fasq Testing

Utilities for mocking queries and mutations in widget tests. Deterministic cache state for reliable CI/CD pipelines.

In Development

DevTools Integration

A dedicated Tab in Flutter DevTools to inspect the cache, view query timelines, and manually trigger refetches.

In Development

Key Features

Intelligent Caching

Automatic caching with configurable staleness detection. Data is cached intelligently and served instantly when available.

Request Deduplication

Multiple requests for the same data automatically deduplicated. Only one network call per unique query.

Type Safety

Full generic type support with compile-time safety. Catch errors at development time, not runtime.

Background Refetching

Stale data served instantly while fresh data loads in the background. Users never wait for data they already have.

Optimistic Updates

Update UI immediately and rollback on error. Provide instant feedback for better user experience.

Hardware-Backed Security

Leverage Secure Enclave and KeyStore to protect encryption keys. Industry-standard AES-GCM encryption for all secure cache entries.

Automated Serialization

Stop writing manual code for JSON parsing. Our generator handles nested generics and lists automatically for type-safe persistence.

Quick Example

// Using fasq_hooks
class UserProfile extends HookWidget {
  @override
  Widget build(BuildContext context) {
    final userQuery = useQuery<User>(
      queryKey: 'user-profile',
      queryFn: () => api.getUserProfile(),
    );

    return userQuery.when(
      loading: () => CircularProgressIndicator(),
      error: (error) => Text('Error: $error'),
      data: (user) => Column(
        children: [
          Text('Name: ${user.name}'),
          Text('Email: ${user.email}'),
        ],
      ),
    );
  }
}

Is FASQ Right for You?

Choose FASQ if you have:

  • Multiple API endpoints to manage
  • Complex caching requirements
  • Need for request deduplication
  • Background data synchronization
  • Team standardization needs
  • Performance-critical applications

Consider alternatives if you:

  • Have simple, single API calls
  • Need micro-level performance control
  • Want minimal bundle size
  • Are new to Flutter development
  • Have unique state management needs
  • Prefer complete code ownership

The Strategic Advantage: FASQ provides tactical speed with strategic resilience. Focus on your product while we handle the complexity of the network layer.

Get Started

Learn the Basics

Start with our comprehensive documentation covering core concepts, installation, and basic usage patterns.

Read Documentation →

Try Examples

Explore real-world examples including REST APIs, GraphQL, authentication, and database integration.

View Examples →

Choose Your Adapter

Pick the integration that fits your project: Hooks, Bloc, Riverpod, or use the core package directly.

Install Now →