dart_sanity_client 0.4.0 copy "dart_sanity_client: ^0.4.0" to clipboard
dart_sanity_client: ^0.4.0 copied to clipboard

A complete sanity.io http client. includes queries in groq and graphql(soon). Has methods for fetch, create, patch, and publish.

example/dart_sanity_client_example.dart

import 'dart:convert';
import 'dart:io';
import 'package:dotenv/dotenv.dart';
import 'package:dart_sanity_client/dart_sanity_client.dart';

Future<dynamic> main() async {
  // quick formatter for pretty printing in console.
  JsonDecoder decoder = JsonDecoder();
  JsonEncoder encoder = JsonEncoder.withIndent('  ');
  void prettyPrintJson(String input) {
    var object = decoder.convert(input);
    var prettyString = encoder.convert(object);
    prettyString.split('\n').forEach((element) => print(element));
  }

  // get .env file to test with private sanity creds
  Directory current = Directory.current;
  final env = DotEnv(includePlatformEnvironment: true)
    ..load(['${current.path}/.env']);

  // client init
  final DartSanityClient client = DartSanityClient(
    SanityConfig(
      dataset: env['dataset'] ?? '',
      projectId: env['projectId'] ?? '',
    ),
  );

  final String query = 'asdf';
  // fetch query using GROQ
  final dynamic results = await client.fetch(query);

  prettyPrintJson(results);
}
0
likes
160
points
42
downloads

Publisher

unverified uploader

Weekly Downloads

A complete sanity.io http client. includes queries in groq and graphql(soon). Has methods for fetch, create, patch, and publish.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

http

More

Packages that depend on dart_sanity_client