appwrite 0.2.2

  • Readme
  • Changelog
  • Example
  • Installing
  • 78

Appwrite Flutter SDK #

pub package License Version

This SDK is compatible with Appwrite server version 0.6.1. For older versions, please check previous releases.

Appwrite is an open-source backend as a service server that abstract and simplify complex and repetitive development tasks behind a very simple to use REST API. Appwrite aims to help you develop your apps faster and in a more secure way. Use the Flutter SDK to integrate your app with the Appwrite server to easily start interacting with all of Appwrite backend APIs and tools. For full API documentation and tutorials go to


Installation #

Add this to your package's pubspec.yaml file:

  appwrite: ^0.2.2

You can install packages from the command line:

pub get appwrite

Contribution #

This library is auto-generated by Appwrite custom SDK Generator. To learn more about how you can help us improve this SDK, please check the contribution guide before sending a pull-request.

License #

Please see the BSD-3-Clause license file for more information.

0.2.2 #

  • Fixed an error that happend when the OAuth session creation request was sent before any other API call
  • Fixed a bug in the Avatars service where location URL generation had syntax error

0.2.1 #

  • Fixed callback scheme

0.2.0 #

  • Updated flutter_web_auth plugin to version 0.2.4
  • Added per project unique callback for OAuth2 redirects to aviod conflicts between multiple Appwrite projects

0.1.1 #

  • Updated flutter_web_auth version

0.1.0 #

  • Added examples file
  • Some minor style fixes

0.0.14 #

  • Using MultipartFile for file uploads

0.0.13 #

  • Fix for file upload method

0.0.12 #

  • Added file upload support for storage service

0.0.11 #

  • Added integration with web auth plugin to support Appwrite OAuth API

0.0.9 #

  • Updated deafult params

0.0.8 #

  • Fixed compilation error in Client class
  • Shorter description for package


Examples #

Init your Appwrite client:

  Client client = Client();

      .setEndpoint('https://localhost/v1') // Your Appwrite Endpoint
      .setProject('5e8cf4f46b5e8') // Your project ID
      .setSelfSigned() // Remove in production

Create a new user and session:

Account account = Account(client);

Response user = await account.create(email: '', password: 'password', name: 'My Name');
Response session = await account.createSession(email: '', password: 'password');

Fetch user profile:

Account account = Account(client);

Response profile = await account.get();

Upload File:

Storage storage = Storage(client);

MultipartFile file = MultipartFile.fromFile('./path-to-file/image.jpg', filename: 'image.jpg');

    file: file,
    read: ['*'],
    write: []
.then((response) {
    print(response); // File uploaded!
.catchError((error) {

All examples and API features are available at the official Appwrite docs

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  appwrite: ^0.2.2

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:appwrite/appwrite.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

We analyzed this package on May 24, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.8.1
  • pana: 0.13.8-dev
  • Flutter: 1.17.0

Health suggestions

Fix lib/services/locale.dart. (-0.50 points)

Analysis of lib/services/locale.dart reported 1 hint:

line 4 col 8: Unused import: 'package:meta/meta.dart'.

Format lib/client.dart.

Run flutter format to format lib/client.dart.

Format lib/services/account.dart.

Run flutter format to format lib/services/account.dart.

Fix additional 4 files with analysis or formatting issues.

Additional issues in the following files:

  • lib/services/avatars.dart (Run flutter format to format lib/services/avatars.dart.)
  • lib/services/database.dart (Run flutter format to format lib/services/database.dart.)
  • lib/services/storage.dart (Run flutter format to format lib/services/storage.dart.)
  • lib/services/teams.dart (Run flutter format to format lib/services/teams.dart.)


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.6.0 <3.0.0
cookie_jar ^1.0.0 1.0.1
cupertino_icons ^0.1.2 0.1.3
dio ^3.0.0 3.0.9
dio_cookie_manager ^1.0.0 1.0.0
flutter 0.0.0
flutter_web_auth ^0.2.4 0.2.4
meta ^1.1.8 1.1.8
package_info ^0.4.0+16 0.4.0+18
path_provider ^1.6.5 1.6.9
Transitive dependencies
charcode 1.1.3
collection 1.14.12
http_parser 3.1.4
path 1.7.0
path_provider_macos 0.0.4+3
path_provider_platform_interface 1.0.2
platform 2.2.1
plugin_platform_interface 1.0.2
sky_engine 0.0.99
source_span 1.7.0
string_scanner 1.0.5
term_glyph 1.1.0
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies