A GraphQL client for Flutter, bringing all the features from a modern GraphQL client to one easy to use package.

Overview

MIT License Financial Contributors on Open Collective All Contributors PRs Welcome

Star on GitHub Watch on GitHub Discord

GraphQL Flutter

πŸ“Œ   Bulletin

About this project

GraphQL brings many benefits, both to the client: devices will need fewer requests, and therefore reduce data usage. And to the programmer: requests are arguable, they have the same structure as the request.

This project combines the benefits of GraphQL with the benefits of Streams in Dart to deliver a high-performance client.

The project took inspiration from the Apollo GraphQL client, great work guys!

Packages

Build Status Coverage

This is a Monorepo which contains the following packages:

Package Pub
graphql/client.dart version
graphql_flutter version

Examples

Here are some examples you can follow:

  1. Starwars Example
  2. flutter_bloc example

Articles and Videos

External guides, tutorials, and other resources from the GraphQL Flutter community

Features

βœ…   Queries, Mutations, and Subscriptions
βœ…   Query polling and rebroadcasting
βœ…   In memory and persistent caching
βœ…   GraphQL Upload
βœ…   Optimistic results
βœ…   Modularity
βœ…   Client-state management
⚠️   Automatic Persisted Queries (out of service)

Contributing

To contribute, please see the CONTRIBUTING.md file.

Contributors

This package was originally created and published by the engineers at Zino App BV. Since then the community has helped to make it even more useful for even more developers.

Thanks goes to these wonderful people (emoji key):


Eustatiu Dima

πŸ› πŸ’» πŸ“– πŸ’‘ πŸ€” πŸ‘€

Zino Hofmann

πŸ› πŸ’» πŸ“– πŸ’‘ πŸ€” πŸš‡ πŸ‘€

Harkirat Saluja

πŸ“– πŸ€”

Chris Muthig

πŸ’» πŸ“– πŸ’‘ πŸ€”

Cal Pratt

πŸ› πŸ’» πŸ“– πŸ’‘ πŸ€”

Miroslav Valkovic-Madjer

πŸ’»

Aleksandar Faraj

πŸ›

Arnaud Delcasse

πŸ› πŸ’»

Dustin Graham

πŸ› πŸ’»

FΓ‘bio Carneiro

πŸ›

Gregor

πŸ› πŸ’» πŸ€”

Kolja Esders

πŸ› πŸ’» πŸ€”

Michael Joseph Rosenthal

πŸ› πŸ’» πŸ“– πŸ’‘ πŸ€” ⚠️ πŸ–‹ πŸš‡ 🚧 πŸ“† πŸ’¬ πŸ‘€ βœ…

Igor Borges

πŸ› πŸ’»

Rafael Ring

πŸ› πŸ’»

TruongSinh Tran-Nguyen

πŸ’» πŸ–‹ πŸ“– πŸ’‘ πŸ€” πŸš‡ ⚠️ βœ…

Maina Wycliffe

πŸ’» πŸ“– πŸ’‘

Lucas de Ávila Martins

πŸ’»

szantogab

πŸ’»

dbrb

πŸ’»

Yunyu Lin

πŸ’»

Ammar Atef

πŸ’»

Ariel Carbonaro

πŸ’»

ArneSchulze

πŸ’»

Christian Wesselhoeft

πŸ’»

JarrodCColburn

πŸ’»

M. Walker Wells

πŸ’»

Mateus Gustavo de Freitas e Silva

πŸ’»

pleopardi

πŸ’»

Sat Mandir S. Khalsa

πŸ’»

Nitish Kumar Singh

πŸ’»

This project follows the all-contributors specification. Contributions of any kind are welcome!

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

Comments
  • Continuing development of this Project

    Continuing development of this Project

    Current State of this Project So if you are aware of what is happening right now, this repo is not maintained much anymore. I have tried reaching @HofmannZ here but got no reply, hope he reaches back soon. I am however continuing development of this project in my repo which I will share here later today. If @HofmannZ comes back to maintaining the repo, I will, of course, be happy to merge it back into this repo. Thank you.

    Here is the new repo https://github.com/juicycleff/flutter-graphql

    question next 
    opened by juicycleff 50
  • [v4] Both result data and exception are sometimes null on network result

    [v4] Both result data and exception are sometimes null on network result

    Describe the bug Just upgraded to graphql_flutter: ^4.0.0-beta.3. What I did is a normal query as I did before.

    I'm not sure what is the problem.

    query {
      userByToken {
        newOrders(query: {skip: 0, sortBy: "createdAt", order: 1}) {
          id
          dishMetas {
            dish {
              id
              name
              store {
                id
                name
                description
                avatar
                district {
                  name
                }
              }
              tag
              price
              avatar
            }
            quantity
            remark
          }
          status
          initiator {
            id
            name
            tel
            address
          }
          deliverPrice
          createdAt
        }
      }
    }
    

    I do the same query in postman which is all fine. I wonder in what situation this data would be null? isLoading is false, and there is no exception. Having worked on it for hours and have no clue.

    :bug: bug released v4 :hourglass: reproduction needed 
    opened by Zony-Zhao 32
  • Fragments stopped working after graphql update

    Fragments stopped working after graphql update

    Describe the issue I updated graphql package from 3.1.0 to 4.0.1 and now GraphQL responses with fragments are not operated correctly. Here is an example on StackOverflow: https://stackoverflow.com/questions/70393062/json-fails-to-parse-graphql-response-after-flutter-libs-upgrade

    I'm not sure if it's related directly to graphql update or is there something wrong with parsing the response with json libraries, but I hope anyone here knows what's going wrong. I checked all the changelogs and docs and didn't find any info about that.

    To Reproduce Steps to reproduce the behavior:

    1. Update graphql from 3.1.0 to 4.0.1
    2. Make a fresh build after flutter clean & updating the pods

    Expected behavior Old documents are working correctly and everything works as well as on 3.1.0

    Actual behavior Documents with fragments don't parse correctly anymore

    device / execution context iOS 14/15, also reproducible in Android

    additional context All the additional context is available in my StackOverflow post, please check it for code samples and screenshots

    additional notes I like everything but I hope it will work for me again :-)

    :bug: bug dart client :package: cache 
    opened by asmodeoux 27
  • How to invalidate cahce

    How to invalidate cahce

    Hello,

    query as well as watchQuery returns cashed properties when fetching the list and this list contains other similar records with same ids but different values. (btw - while talking here i realized more about nature of this bug thats why it took more time to put cleaner description)

    I gave enough examples and screenshots but can try to give better one :)

    server returns this data:

    [
      {
        'id': '1',
        'name': 'test',
        'nestedObject': {
             id: 'nestedId',
             value: '5'
        }
      },
      {
        'id': '2',
        'name': 'test2',
        'nestedObject': {
             id: 'nestedId',
             value: '6'
        }
      },
    ]
    

    client receives this data:

    [
      {
        'id': '1',
        'name': 'test',
        'nestedObject': {
             id: 'nestedId',
             value: '5'
        }
      },
      {
        'id': '2',
        'name': 'test2',
        'nestedObject': {
             id: 'nestedId',
             value: '5'
        }
      },
    ]
    
    • names in both objects will be received correctly because top level id is different.
    • value will get same value because id is the same despite server sending different value
    :bug: bug 
    opened by vytautas-pranskunas- 26
  • Query refetch not working

    Query refetch not working

      options: QueryOptions(
        document: readRepositories, // this is the query string you just created
        variables: {
          'nRepositories': 50,
        },
        pollInterval: 10,
      ),
      // Just like in apollo refetch() could be used to manually trigger a refetch
      builder: (QueryResult result, { VoidCallback refetch }) {
        if (result.errors != null) {
          return Text(result.errors.toString());
        }
    
        if (result.loading) {
          return Text('Loading');
        }
    
        // it can be either Map or List
        List repositories = result.data['viewer']['repositories']['nodes'];
    
        return ListView.builder(
          itemCount: repositories.length,
          itemBuilder: (context, index) {
            final repository = repositories[index];
    
         return  FloatingActionButton(
            onPressed: refetch(),
            tooltip: 'Increment',
            child: Icon(Icons.add),
          )
        });
      },
    );```
     I calling refetch() but I am not seeing the output
    :bug: bug help wanted :hatching_chick: good first issue flutter 
    opened by Wisdom0063 26
  • Types generation

    Types generation

    I can make a generator for the types, but it would be nice to pass the parameters to the runtime. I think Dart doesn't allow it, but how could we go towards that full typed approach? I haven't written a single line of Dart but I liked Flutter a lot, but I'd need to use it with GraphQL. I can help with the GraphQL part but I would need help with Dart.

    enhancement 
    opened by lucasavila00 26
  • fetchMore and refetch don't fetch information at all

    fetchMore and refetch don't fetch information at all

    Just like in the title, I was wondering how to use fetchMore. I was trying a lot of different technics (like trying to do it with refetch) but I am not moving forward with this at all, it just doesn't pull the new information. Code below is what I'm stuck with now. This is meant to be my pagination attempt for my work project. I feel like I cannot find too much information on how to get this to work - it doesn't fetchMore results, the result.data doesn't get updated with newly fetched data - basically it doesn't work. Also, I don't really understand how to get the new Map (I would love for the new results to be merged into the old map) as a variable after previous result and new result are merged together - I would like it to be hopefully a smooth experience and for the data to show up right on the bottom and for the user to not be transported to the top of the list.

    class Page extends StatefulWidget {
      const Page({Key? key}) : super(key: key);
    
      @override
      PageState createState() => PageState();
    }
    
    var howManyToFetch = 3;
    var offset = 0;
    List repositories = [];
    bool refetched = false;
    
    late String readRepositories = '''
              query MyQuery {
    (*branch element*)(first: $howManyToFetch, offset: $offset, orderBy: "-published") {
    (*I cannot show you the rest of the query*)
      ''';
    
    class PageState extends State<Page> {
    
      var hasMore = true;
      final controller = ScrollController();
    
      Future fetch() async {
        if (hasMore) {
          offset = offset+3;
          print("How many to fetch?"+howManyToFetch.toString());
          refetched = true;
          setState(() {});
        } else {
          setState(() {});
        }
      }
    
      @override
      void initState() {
        super.initState();
        controller.addListener(() {
          if (controller.position.maxScrollExtent == controller.offset) {
            fetch();
          }
        });
      }
    
      @override
      void dispose() {
        controller.dispose();
        super.dispose();
      }
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(`
            backgroundColor: Colors.white60,
            appBar: PreferredSize(
              preferredSize:
              Size.fromHeight(MediaQuery.of(context).size.height * 0.07),
              child: Stack(
                children: [
                  AppBar(),
                  Container(
                    alignment: Alignment.bottomCenter,
                    child: Image.asset(
                      assetName,
                      fit: BoxFit.contain,
                      height: MediaQuery.of(context).size.height * 0.07,
                    ),
                  )
                ],
              ),
            ),
    
           body: Query(
              options: QueryOptions(document: gql(readRepositories)),
              builder:
                  (QueryResult result, {
                VoidCallback? refetch,
                FetchMore? fetchMore,
              }) {
                if (result.hasException) {
                  return Text(result.exception.toString());
                }
    
                if (result.isLoading) {
                  return const Center(
                    child: CircularProgressIndicator(),
                  );
                }
    
                if (repositories.isEmpty) {
                  repositories = result.data?(*Rest of the path to edges*);
                  print("Empty "+(result.data?(*Rest of the path to edges*).length).toString());
                }
                else {
                  if (refetched) {
                    refetch!();
                    fetchMore!(FetchMoreOptions(updateQuery: (prev, fetched) => prev = deeplyMergeLeft(
                      [prev, fetched],
                    ), variables: {"offset":offset, "first":howManyToFetch}));
                    print("Not empty "+(result.data?[(*Rest of the path to edges*).length).toString());
                    List repositories1 = result.data?(*Rest of the path to edges*);
                    print(repositories1.length);
                    // List newRepositories = result.data?(*Rest of the path to edges*);
                    // for (int i=0;i<newRepositories.length;i++) {
                    //   repositories.add(newRepositories[i]);
                    // }
                    refetched = false;
                  }
                }
    
                hasMore = (result.data?(*Rest of the path to hasNextPage*));
    
                if (repositories == null) {
                  return const Text('No repositories');
                }
    
                return ListView.builder(
                  controller: controller,
                    itemCount: repositories.length+1,
                    itemBuilder: (context, index) {
                      if (index < repositories.length){
                        final repository = repositories[index];
    
    (*List elements' variables*)
    
                        (*Component for creating list elements*) {
                          onTap: () {
                            Navigator.push(
                              context,
                              MaterialPageRoute(
                                  builder: (context) => (*Builder function*)
                            );
                          },
                        );
                      } else {
                        return Padding(padding: const EdgeInsets.only(top: 10.0, bottom: 10.0), child: Center(child: hasMore ? const CircularProgressIndicator() : const Text("No more information", style: TextStyle(color: Colors.grey),),),);
                      }
                    });
              },
            )
        );
      }
    }
    
    

    UPDATE It seems as if it couldn't take new variable values or even the query itself because when I wanted to check if variables update they did but the result was still the same, but after I added a part where if it refetches/fetches more it has to clear the result data from the map and it now shows null, doesn't add new data to it.

    The code is now (I am constantly commenting and uncommenting different parts of it):

    if (repositories.isEmpty) {
                  repositories = result.data?(*path*)?['edges'];
                  print("Empty "+(result.data?(*path*)?['edges'].length).toString());
                }
                else {
                  if (refetched) {
                    result.data?.clear();
                    refetch!();
                    // var opts = FetchMoreOptions.partialUpdater((prev, fetched) => deeplyMergeLeft([prev, fetched]));
                    // fetchMore!(FetchMoreOptions(updateQuery: opts, variables: {"offset": offset, "first":howManyToFetch}));
                    // fetchMore!(FetchMoreOptions(updateQuery: (prev, fetched) => deeplyMergeLeft(
                    //   [prev, fetched],
                    //   ), variables: {"offset":offset, "first":howManyToFetch}));
                    print("offset "+offset.toString());
                    print("How many to fetch? "+howManyToFetch.toString());
                    print("Not empty "+(result.data?(*path*).length).toString());
                    // List newRepositories = result.data?(*path*);
                    // for (int i=0;i<newRepositories.length;i++) {
                    //   repositories.add(newRepositories[i]);
                    // }
                    refetched = false;
                  }
                }
    
    :hourglass: reproduction needed Priority: Waiting to be assigned 
    opened by businessAccountFlutter 25
  • Pagination with nested document returns same new data for both fetchMoreResultData and previousResultData

    Pagination with nested document returns same new data for both fetchMoreResultData and previousResultData

    I currently have settings like below

    void main() {
      final HttpLink httpLink = HttpLink(uri: 'http://cast.mvp.com/apollo_api');
    
      final AuthLink authLink =
          AuthLink(getToken: () async => await Storage.getAuthToken());
    
      final Link link = authLink.concat(httpLink);
    
      ValueNotifier<GraphQLClient> client = ValueNotifier(
        GraphQLClient(
          cache: InMemoryCache(),
          link: link,
        ),
      );
    
      return runApp(
        GraphQLProvider(
          client: client,
          child: CacheProvider(
            child: MyApp(),
          ),
        ),
      );
    }
    

    and I am updating cache like below

    update: (Cache cache, QueryResult result) async {
                                  if (result.hasErrors) {
                                    //TODO error handling
                                  } else {
                                    final Map<String, Object> mapified =
                                        result.data['votePostComment']
                                            as Map<String, Object>;
    
                                    final String key =
                                        '${mapified['__typename']}/${mapified['id']}';
    
                                    cache.write(key, mapified);
    
                                    refetch();
                                  }
                                  return cache;
                                },
    

    Cache is getting updated very nicely; however, the change is just not reflected on the screen. I am currently using this under statelesswidget.

    Now, when I change the cache to NormalizedCache or OptimisticCache, I can get the changes to be reflected on the screen; however, I encounter another problem where I just cannot get the previousResultData properly (it is always same as the fetchMoreResultData. This, for some reason I have not been able to reproduce so I will try to post more code on it when I can reproduce it. Meanwhile, how can I make InMemoryCache change get reflected throughout the widget enclosed by query?

    opened by serendipity1004 25
  • Implement fetchMore API for pagination

    Implement fetchMore API for pagination

    Is your feature request related to a problem? Please describe. Currently, there is not an elegant way to do pagination with a GraphQL query. Apollo supports this thru the fetchMore API that is part of the query result.

    Describe the solution you'd like In Apollo, the fetchMore function allows you to do a new GraphQL query and merge the result into the original result. You can override variables, and provide a callback function to update the previous query.

    Here's a simple example in in JavaScript

    fetchMore({
      variables: {
        offset: data.feed.length
      },
      updateQuery: (prev, { fetchMoreResult }) => {
        if (!fetchMoreResult) return prev;
        return Object.assign({}, prev, {
          feed: [...prev.feed, ...fetchMoreResult.feed]
        });
      }
    });
    

    Describe alternatives you've considered Right now the best solution I can come up with is to implement this logic with a GraphQLConsumer that gives me access to the GraphQLClient. This isn't the worst, but it does require quite a bit of boilerplate code.

    Additional context https://www.apollographql.com/docs/react/features/pagination.html

    enhancement next 
    opened by chimon2000 24
  •  response with nested objects using array relation

    response with nested objects using array relation

    Describe the bug Is it possible to use a API response with nested objects using array relation

    To Reproduce see https://docs.hasura.io/1.0/graphql/manual/queries/nested-object-queries.html#fetch-nested-objects-using-an-array-relationship

    Additional context So, how should I make ise of an array with [ item {...} item {..} ..ect ] in the response of the GraphQl API

    opened by HBO2 23
  • Subscription, can use it without using subscription widgets?

    Subscription, can use it without using subscription widgets?

    I want to open subscriptions programmatically. How do I write them?hope it's the same as queries. don't know how to write it.

        QueryResult result = await minProvide.graphqlClient.value.query(QueryOptions(
          document:  Queries.getHomeAppBanners,
          variables: {"timer":"${DateTime.now().millisecondsSinceEpoch}"}
        ));
    
    :bullettrain_side: doc & examples 
    opened by chenxianqi 23
  • There was an error causing connection lost: Bad state: Cannot add new events after calling close

    There was an error causing connection lost: Bad state: Cannot add new events after calling close

    There was an error causing connection lost: Bad state: Cannot add new events after calling close

    Version: 5.1.1-beta.4

    Flow:

    • Screen chat_room: Going back to home screen and calling connectOrReconnect
    • When home screen come it firing this error and cannot listen subscription's result.
    needs more info :hourglass: reproduction needed Priority: Waiting to be assigned 
    opened by GujjuFlutterGuy 1
  • Custom connectFn - WebSocketChannel Socket<List<int>>

    Custom connectFn - WebSocketChannel Socket>

    Description While using graphql, I have specific requirement which force me to use a custom connectFn, so I can provide a custom WebSocketChannel. By creating 2 stream controllers ( one for upstream and other for downstream) and pass the sink and stream to the websocket channel, I'm able to implement custom networking. The problem resides in the way graphql interacts with the sink. From what seen in graphql(this library) code:

    socketChannel!.sink.add(
              json.encode(
                message,
                toEncodable: (dynamic m) => m.toJson(),
              ),
            );
    

    a String is sent to the sink ( the result of json.encode is a string). This clashes with the WebSocketChannel constructor signature, which clearly mandates a List of int:

    WebSocketChannel(StreamChannel<List<int>> channel,
          {String? protocol, Duration? pingInterval, bool serverSide = true})
          : _webSocket = WebSocketImpl.fromSocket(
                channel.stream, channel.sink, protocol, serverSide)
              ..pingInterval = pingInterval;
    

    In the stream connected to the sink, i receive a list of ints that are not convertible to string; and honestly, i don't know what they are. ( Perhaps some toString of the object hash?! ). Example message ( this should be the first ack sent to the server ):

    flutter: ======================================================
    flutter: PRINTING POSSIBLE CONVERSIONS FROM UPSTREAM MESSAGE
    flutter: originalEvent: [129, 154, 77, 223, 32, 209]
    flutter: base64Event: FormatException: Invalid character (at character 1)
    šMß Γ‘
    ^
    flutter: obj: [129, 154, 77, 223, 32, 209]
    flutter: obj: šMß Γ‘
    

    Reroduce A runnable example (flutter app) can be found at this repo. Just follow the instructions on the readme, or just run the project and look into the console.

    Expected behavior I would expect the data that comes from the sink would be easily convertable to string. I would expect to see a string with json inside.

    device / execution context Are you on iOS, android, web, in a simulator, running from the terminal etc? This is especially important for localhost connection issues.

    :zap: websocket 
    opened by GoncaloPT 0
  • ws: Unhandled exceptions from SocketClient

    ws: Unhandled exceptions from SocketClient

    Describe the issue The SocketClient._connect() function sets up a bunch of StreamSubscriptions on _messages that don't have any onError callbacks. For example #1228 will result in multiple unhandled exceptions that can't be caught by the user of this package.

    To Reproduce

    1. Make GraphQLSocketMessage.parse throw any exception
    2. Try to catch it from any application that tries to create a ws connection
    3. observe the mayhem
    4. (optional) Change Stream<GraphQLSocketMessage> get _messages => socketChannel!.messages; in SocketClient to Stream<GraphQLSocketMessage> get _messages => socketChannel!.messages.handleError((e) => print("Getting errors ${e}"))

    Expected behavior Exceptions from SocketClient should not escape _connect() or the user should be able to catch them.

    :zap: websocket 
    opened by etegan 1
  • improve melos configuration

    improve melos configuration

    While I was working on a PR that make some changes inside Melos (https://github.com/zino-hofmann/graphql-flutter/pull/1207/commits/00dfdb412ead1a011ab8bef7a81451465930ebeb) I think our melos conf can be improved, so why we do not mentor someone on this?

    If you want to work on this issue please ping me where you want!

    :beginner: ci/cd :woman_technologist: mentor 
    opened by vincenzopalazzo 0
Releases(graphql_flutter-v5.1.1)
  • graphql_flutter-v5.1.1(Jan 4, 2023)

    Fixed

    • increase connectivity_plus version to v3 (commit). @vincenzopalazzo 03-12-2022
    • fix wrong default policy merging in useWatchQue… (commit). @dehypnosis 22-07-2022
    • Upgrade graphql version (commit). @budde377 23-04-2022
    • Correctly add web as supported platform (commit). @budde377 23-04-2022

    Added

    • support flutter 3.0 and 2.x (commit). @vincenzopalazzo 20-05-2022
    • added query onError & onComplete callbacks (commit). @fabis94 22-04-2022
    • Decouple GraphQLClient Provider (commit). @budde377 19-04-2022

    Merry Christmas 🀢🏼

    Vincent.

    Source code(tar.gz)
    Source code(zip)
  • graphql-v5.1.2(Jan 4, 2023)

    Added

    • Refactor GH actions (commit). @budde377 13-08-2022
    • Introduce a new class GraphQLProtocol with better naming (commit). @vincenzopalazzo 22-07-2022
    • add raw to exceptions on QueryResult (commit). @maironLucasSlz 28-11-2022
    • add support for graphql-transport-ws (commit). @maximilianmaihoefner 08-05-2022
    • added query onError & onComplete callbacks (commit). @fabis94 22-04-2022

    Deprecated

    • deprecate the SocketSubProtocol to improve naming (commit). @vincenzopalazzo 22-07-2022

    Fixes

    • Minor formatting issues (commit). @budde377 23-04-2022
    • Transform nested objects (commit). @budde377 27-06-2022
    • send connection_init message during handshake (commit). @othorin 20-05-2022
    • fix SocketClient to close subscription on socket close (commit). @qbx2 22-07-2022
    • Allow list of errors as payloads for graphql-transport-… (commit). @juancastillo0 05-10-2022
    • Adapt code to breaking change of 'gql' dependencies (commit). @ueman 21-08-2022
    • Normalization signature (commit). @budde377 13-08-2022
    • fixing the dart analyzer error (commit). @vincenzopalazzo 27-11-2022

    Merry Christmas 🀢🏼

    Vincent.

    Source code(tar.gz)
    Source code(zip)
  • graphql_flutter-v5.1.1-beta.6(Dec 3, 2022)

  • graphql-v5.1.2-beta.6(Dec 3, 2022)

  • graphql-v5.1.2-beta.5(Oct 10, 2022)

    graphql-v5.1.2-beta.5

    Fixed

    • Allow list of errors as payloads for graphql-transport-… (commit). @juancastillo0 05-10-2022
    • Adapt code to breaking change of 'gql' dependencies (commit). @ueman 21-08-2022
    • Normalization signature (commit). @budde377 13-08-2022

    Added

    • Refactor GH actions (commit). @budde377 13-08-2022
    Source code(tar.gz)
    Source code(zip)
  • graphql_flutter-v5.1.1-beta.4(Jul 22, 2022)

  • graphql-v5.1.2-beta.4(Jul 22, 2022)

    Fixed

    • fix SocketClient to close subscription on socket close (commit). @qbx2 22-07-2022

    Added

    • Introduce a new class GraphQLProtocol with better naming (commit). @vincenzopalazzo 22-07-2022

    Deprecated

    • deprecate the SocketSubProtocol to improve naming (commit). @vincenzopalazzo 22-07-2022
    Source code(tar.gz)
    Source code(zip)
  • graphql-v5.1.2-beta.3(Jun 28, 2022)

  • graphql_flutter-v5.1.1-beta.3(May 20, 2022)

  • graphql_flutter-v5.1.1-beta.2(Apr 24, 2022)

  • graphql_flutter-v5.1.1-beta.1(Apr 23, 2022)

  • graphql-v5.1.2-beta.1(Apr 23, 2022)

  • graphql-v5.1.1(Apr 9, 2022)

  • graphql_flutter-v5.1.0(Apr 8, 2022)

    New Feature

    • Stricter analysis (https://github.com/zino-hofmann/graphql-flutter/commit/131ea1f78b55554f730269f94aad11fb1d07cc44). @budde377 19-03-2022
    Source code(tar.gz)
    Source code(zip)
  • graphql-v5.1.0(Apr 8, 2022)

    v5.1.0

    New Feature

    • Hive integration (commit). @budde377 03-04-2022

    Fixes

    • subscription hook return an uninitialized stream (https://github.com/zino-hofmann/graphql-flutter/commit/ebc4abd86b72b75ffe4e26a2f412411ab7dd2993). @PainteR 25-03-2022
    • Stricter analysis (https://github.com/zino-hofmann/graphql-flutter/commit/131ea1f78b55554f730269f94aad11fb1d07cc44). @budde377 19-03-2022
    Source code(tar.gz)
    Source code(zip)
  • graphql-v5.0.2-beta.8(Apr 4, 2022)

  • v5.0.2-beta.6(Mar 16, 2022)

  • v5.0.2-beta.5(Mar 15, 2022)

  • v5.0.2-beta.4(Mar 14, 2022)

  • v5.0.2-beta.3(Feb 17, 2022)

    What's Changed

    • feat: Update options by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1037
    • fix: Read from cache first on cacheAndNetwork by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1038
    • ci: fixed version issue by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1039
    • feat: Add hooks examples by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1034
    • fix: Cache-reboardcast error by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1041
    • docs(graphql): fix typo by @futabooo in https://github.com/zino-hofmann/graphql-flutter/pull/1042
    • fix: Fetch more is broken with parserFn by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1044

    New Contributors

    • @futabooo made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1042

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.1...v5.0.2-beta.3

    Source code(tar.gz)
    Source code(zip)
  • v5.0.2-beta.2(Feb 15, 2022)

    What's Changed

    • feat: Update options by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1037
    • fix: Read from cache first on cacheAndNetwork by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1038
    • ci: fixed version issue by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1039
    • feat: Add hooks examples by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1034

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.1...v5.0.2-beta.2

    Source code(tar.gz)
    Source code(zip)
  • v5.0.2-beta.1(Feb 14, 2022)

    What's Changed

    • feat: Update options by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1037
    • fix: Read from cache first on cacheAndNetwork by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1038

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.1...v5.0.2.beta1

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1(Feb 13, 2022)

    What's Changed

    • docs(graphql_flutter): fix typo by @jjangga0214 in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • Dependeces migration and test disabling (for now) by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • ci: try to upgrade the node version to make the package release by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/985
    • Fixed typo in the README.md by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/982
    • perf: open Hive boxes concurrently by @Ascenio in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • ci: Migration to github actions by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/984
    • ci: Formatting workflow file, and fixed regression by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/995
    • example: update starwars demo, and refactoring code base with a new s… by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/996
    • Add necessary import to GraphQL Upload example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/998
    • Fix websocket disconnect after connection loss by @Bligoubloups in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • fixed the gql dependecens due the breaking changes by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/999
    • update README.md by @adnanjpg in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • feat: Update normalize by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1005
    • graphql: removing print url into the console and API improvement by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1006
    • graphql: restore ws test by introducing a ws echo server written in dart by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1010
    • Fix close websocket on web and a few related cleanups by @klondikedragon in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • feat: Add parser support by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1013
    • fix: Pass parse type to run by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1017
    • packages: improve the pub.dev scoring by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1021
    • graphql: reworking Socket Client API to support custom header by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1016
    • doc: update the doc and remove the bloc example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1027
    • graphql_flutter: migrate the example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1032
    • Use flutter pub add to add dependencies by @domesticmouse in https://github.com/zino-hofmann/graphql-flutter/pull/1033

    New Contributors

    • @jjangga0214 made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • @vincenzopalazzo made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • @Ascenio made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • @Bligoubloups made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • @adnanjpg made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • @klondikedragon made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • @domesticmouse made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1033

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.0...v5.0.1

    What's Changed

    • docs(graphql_flutter): fix typo by @jjangga0214 in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • Dependeces migration and test disabling (for now) by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • ci: try to upgrade the node version to make the package release by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/985
    • Fixed typo in the README.md by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/982
    • perf: open Hive boxes concurrently by @Ascenio in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • ci: Migration to github actions by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/984
    • ci: Formatting workflow file, and fixed regression by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/995
    • example: update starwars demo, and refactoring code base with a new s… by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/996
    • Add necessary import to GraphQL Upload example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/998
    • Fix websocket disconnect after connection loss by @Bligoubloups in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • fixed the gql dependecens due the breaking changes by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/999
    • update README.md by @adnanjpg in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • feat: Update normalize by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1005
    • graphql: removing print url into the console and API improvement by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1006
    • graphql: restore ws test by introducing a ws echo server written in dart by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1010
    • Fix close websocket on web and a few related cleanups by @klondikedragon in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • feat: Add parser support by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1013
    • fix: Pass parse type to run by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1017
    • packages: improve the pub.dev scoring by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1021
    • graphql: reworking Socket Client API to support custom header by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1016
    • doc: update the doc and remove the bloc example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1027
    • graphql_flutter: migrate the example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1032
    • Use flutter pub add to add dependencies by @domesticmouse in https://github.com/zino-hofmann/graphql-flutter/pull/1033
    • ci: fixed the release process in the beta branch by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1035

    New Contributors

    • @jjangga0214 made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • @vincenzopalazzo made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • @Ascenio made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • @Bligoubloups made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • @adnanjpg made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • @klondikedragon made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • @domesticmouse made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1033

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.0...v5.0.1

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1-beta.6(Feb 2, 2022)

    What's Changed

    • Fix close websocket on web and a few related cleanups by @klondikedragon in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • feat: Add parser support by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1013
    • fix: Pass parse type to run by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1017
    • packages: improve the pub.dev scoring by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1021
    • graphql: reworking Socket Client API to support custom header by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1016

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.1-beta.5...v5.0.1-beta.6

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1-beta.5(Jan 26, 2022)

    What's Changed

    • graphql: restore ws test by introducing a ws echo server written in dart by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1010
    • Fix close websocket on web and a few related cleanups by @klondikedragon in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • feat: Add parser support by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1013
    • fix: Pass parse type to run by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1017

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.0-beta.4...v5.0.1-beta.5

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1-beta.4(Jan 25, 2022)

    What's Changed

    • docs(graphql_flutter): fix typo by @jjangga0214 in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • Dependeces migration and test disabling (for now) by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • ci: try to upgrade the node version to make the package release by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/985
    • Fixed typo in the README.md by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/982
    • perf: open Hive boxes concurrently by @Ascenio in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • ci: Migration to github actions by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/984
    • ci: Formatting workflow file, and fixed regression by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/995
    • example: update starwars demo, and refactoring code base with a new s… by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/996
    • Add necessary import to GraphQL Upload example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/998
    • Fix websocket disconnect after connection loss by @Bligoubloups in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • fixed the gql dependecens due the breaking changes by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/999
    • update README.md by @adnanjpg in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • feat: Update normalize by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1005
    • graphql: removing print url into the console and API improvement by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1006
    • graphql: restore ws test by introducing a ws echo server written in dart by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/1010
    • Fix close websocket on web and a few related cleanups by @klondikedragon in https://github.com/zino-hofmann/graphql-flutter/pull/1012
    • feat: Add parser support by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1013

    New Contributors

    • @jjangga0214 made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • @vincenzopalazzo made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • @Ascenio made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • @Bligoubloups made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • @adnanjpg made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • @klondikedragon made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1012

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.0...v5.0.1-beta.4

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1-beta.3(Jan 8, 2022)

    What's Changed

    • docs(graphql_flutter): fix typo by @jjangga0214 in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • Dependeces migration and test disabling (for now) by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • ci: try to upgrade the node version to make the package release by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/985
    • Fixed typo in the README.md by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/982
    • perf: open Hive boxes concurrently by @Ascenio in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • ci: Migration to github actions by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/984
    • ci: Formatting workflow file, and fixed regression by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/995
    • example: update starwars demo, and refactoring code base with a new s… by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/996
    • Add necessary import to GraphQL Upload example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/998
    • Fix websocket disconnect after connection loss by @Bligoubloups in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • fixed the gql dependecens due the breaking changes by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/999
    • update README.md by @adnanjpg in https://github.com/zino-hofmann/graphql-flutter/pull/1003
    • feat: Update normalize by @budde377 in https://github.com/zino-hofmann/graphql-flutter/pull/1005

    New Contributors

    • @jjangga0214 made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • @vincenzopalazzo made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • @Ascenio made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • @Bligoubloups made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • @adnanjpg made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/1003

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.0...v5.0.1-beta.3

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1-beta.2(Dec 28, 2021)

    What's Changed

    • docs(graphql_flutter): fix typo by @jjangga0214 in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • Dependeces migration and test disabling (for now) by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • ci: try to upgrade the node version to make the package release by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/985
    • Fixed typo in the README.md by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/982
    • perf: open Hive boxes concurrently by @Ascenio in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • ci: Migration to github actions by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/984
    • ci: Formatting workflow file, and fixed regression by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/995
    • example: update starwars demo, and refactoring code base with a new s… by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/996
    • Add necessary import to GraphQL Upload example by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/998
    • Fix websocket disconnect after connection loss by @Bligoubloups in https://github.com/zino-hofmann/graphql-flutter/pull/963
    • fixed the gql dependecens due the breaking changes by @vincenzopalazzo in https://github.com/zino-hofmann/graphql-flutter/pull/999

    New Contributors

    • @jjangga0214 made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/952
    • @vincenzopalazzo made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/978
    • @Ascenio made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/932
    • @Bligoubloups made their first contribution in https://github.com/zino-hofmann/graphql-flutter/pull/963

    Full Changelog: https://github.com/zino-hofmann/graphql-flutter/compare/v5.0.0...v5.0.1-beta.2

    Source code(tar.gz)
    Source code(zip)
  • v5.0.1-beta.1(Nov 23, 2021)

  • v5.0.0(Jun 7, 2021)

    5.0.0 (2021-06-07)

    Bug Fixes

    • ci: graphql coverage (d47852a)
    • ci: refine dartanalyzer for example (e7b5830)
    • ci: stop using test_coverage (28e499e)
    • ci: try dart analyze (61e9f81)
    • client: always only pull broadcast stream once (1b6a9e6)
    • client: AuthLink getToken result should be nullable. (7f36a68)
    • client: fix rebroadcasting for regular queries (3245e27)
    • client: fix rebroadcasting for regular queries (0c6b0e7)
    • client: hotfix dataIdFromObject passthrough in cache.readQuery (e3e04f8)
    • examples: upgrade to nullsafety (fe69bce)
    • flutter: make sure starwars works with nullsafe changes (6d27c64)
    • graphql: only return subscriptions eagerly from cache when a cache-enabled policy is used (8af2edd)

    Features

    • client: Capture stack traces in UnknownExceptions (4b36c09)
    • client: null safe by default (802185a)
    • client: SocketClient with web_socket_channel (6631f42)
    • Expose possibleTypes on cache (#906) (49483ad)

    BREAKING CHANGES

    • client: Null Safety
    Source code(tar.gz)
    Source code(zip)
Owner
Zino & Co.
A full-service Development Agency providing engineering, strategy and consulting to medium and large enterprises.
Zino & Co.
A demo Project Showcasing HowTo use GraphQL to conect as a client to a GraphQL service.

graphql_demoapp A Flutter App to demonstrate how to work with GraphQL Server, connecting through our app as a client. Working with basic queries and m

Igor L Sambo 2 Nov 7, 2021
This is a JazzCash UI clone ( Modern Wallet App in Pakistan), implementing modern app bar animmation. One can take a concept of making app bar with animation.

jazzcash_ui This is a JazzCash UI clone ( Modern Wallet App in Pakistan), implementing modern app bar animmation. One can take a concept of making app

null 9 Nov 27, 2022
Lite-graphql - A light way implementation of GraphQL client in dart language

lite GraphQL client A light way implementation of GraphQL client in dart languag

Vincenzo Palazzo 3 Mar 17, 2022
A package that gives us a modern way to show animated border as a placeholder while loading our widget with easy customization and ready to use.

A package that gives us a modern way to show animated border as a placeholder while loading our widget with easy customization and ready to use.

Mohit Chauhan 8 Oct 3, 2022
Bringing back contex.read and context.watch for riverpod

This package brings back the context extensions for riverpod that were discontinued in version 1.0.0. To read any provider, do context.read(myProvider

Kilian Schulte 2 Sep 28, 2022
An all-in-one Fllutter package for state management, reactive objects, animations, effects, timed widgets etc.

Frideos An all-in-one package for state management, streams and BLoC pattern, animations and timed widgets, effects. Contents 1. State management Gett

Francesco Mineo 188 Dec 23, 2022
An online learning application with all needed features implemented

ELEARN An online learning application: completely functional with payment systems and firebase added. Overview This application has been developed to

null 1 Nov 4, 2021
Awesome Notifications add-on plugin to enable push notifications through Firebase Cloud Messaging with all awesome notifications features.

Awesome Notifications FCM Awesome Notifications add-on to send push notifications using FCM (Firebase Cloud Messaging), with all awesome notifications

Rafael Setragni 8 Jan 4, 2023
FFloat, although simple and easy to use, can satisfy all your imagination of the floating layer.

ffloat FFloat, although simple and easy to use, can satisfy all your imagination of the floating layer. Born and elegant, supporting precise position

Fliggy Mobile 221 Oct 25, 2022
Google one tap sign in - Flutter Google One Tap Sign In (Android)

Google One Tap Sign In Google One Tap Sign In (Android) A Flutter Plugin for Goo

null 6 Nov 23, 2022
One Dungeon is a ​1-Bit-style platformer game that consists of one level

One Dungeon is a ​1-Bit-style platformer game that consists of one level. It developed during the Midyear 2022 Flame Game Jam.

Bulent Baris Kilic 6 Sep 21, 2022
Call Kit is a prebuilt feature-rich call component, which enables you to build one-on-one and group voice/video calls into your app with only a few lines of code.

Call Kit (ZegoUIKitPrebuiltCall) Call Kit is a prebuilt feature-rich call component, which enables you to build one-on-one and group voice/video calls

ZEGOCLOUD 9 Dec 26, 2022
A flutter widget to indicate loading progress. Easy to use, easy to extend

?? ?? ?? A flutter widget to indicate loading progress. Easy to use, easy to extend

Manuel Duarte 2 May 30, 2022
[Flutter SDK V.2] - Youtube Video is a Flutter application built to demonstrate the use of Modern development tools with best practices implementation like Clean Architecture, Modularization, Dependency Injection, BLoC, etc.

[Flutter SDK V.2] - Youtube Video is a Flutter application built to demonstrate the use of Modern development tools with best practices implementation like Clean Architecture, Modularization, Dependency Injection, BLoC, etc.

R. Rifa Fauzi Komara 17 Jan 2, 2023
A Flutter plugin to use iOS 16.1+ Live Activities ⛹️ & iPhone 14 Pro Dynamic Island ⚫️ features

Live Activities A Flutter plugin to use iOS 16.1+ Live Activities & iPhone 14 Pro Dynamic Island features. ?? What is it ? This plugin use iOS Activit

Dimitri Dessus 53 Dec 26, 2022
Raden Saleh 20 Aug 12, 2023
Raden Saleh 53 Jul 27, 2023
A TabBarController that is easy to use for flutter developers. πŸ₯° It supports various styles of page navigation, and you can also use it to customize your favorite styles. 🍻🍻

easy_tab_controller A user-friendly TabBarController widget for flutter developer. Getting Started This project is a starting point for a Flutter plug

εœ†ε·ζœ¬ζ˜Š 3 May 26, 2022