Hexabase(ヘキサベース)は企業向けのBaaS(Backend as a Service)を提供しています。認証やデータストア、ファイルストレージ、リアルタイム通知などの機能があり、企業向けのシステム開発に必要な機能をまるっと提供しています。
APIはREST APIとGraphQLを提供しています。そのAPIをラップしたSDKも開発を進めています。SDKは現在、TypeScriptとDart向けに開発しています。Dart向けのSDKは、もちろんFlutterでも利用できます。
この記事ではFlutter SDKについて、インストールとアプリケーションの作成・更新・削除の方法について解説します。
パッケージとソースコード
パッケージはpub.devで公開しています。
ソースコードはGitHubにて公開しています。ライセンスはMIT Licenseです。
hexabase/hexabase-dart: Hexabase SDK for Dart & Flutter
インストール
インストールは dart pub get
で行えます。
dart pub get hexabase
インポート
SDKをインポートします。
import 'package:hexabase/hexabase.dart';
初期化
まずインスタンスを作成します。
var client = Hexabase();
別なファイルで再度インポートした場合には、以下でインスタンスを取得してください。
var client = Hexabase.instance;
ワークスペースの設定とアプリケーションを取得
アプリケーションを検索する場合には、以下のようにワークスペースを設定して、 applications
メソッドで取得します。
var workspace = client.workspace(id: keys['workspace']);
var applications = await workspace.applications();
またはアプリケーションIDを適用して、取得します。
var application = client.application(id: keys['application']);
アプリケーションを作成する
新しくアプリケーションを作成する場合には、以下のように行います。現在、1つ目の引数である言語は ja
(日本語)または en
(英語)のみ対応しています。
var application = client.application();
application.name('ja', 'テストアプリ v2').name('en', 'Test App');
await application.save();
テンプレートを使う場合には、 templateId
を使います。
application.templateId = 'TEMPLATE_ID';
await application.save();
アプリケーションを更新する
アプリケーション名を更新する場合には、以下のように行います。
application.name('ja', 'テストアプリ v2');
await application.save();
アプリケーションを削除する
アプリケーションを削除する際には delete
メソッドを使います。
await application.delete();
まとめ
アプリケーションはHexabaseのワークスペースの下に紐付くデータですが、データストアやファイルストアなどを操作する際の基本になります。管理画面でも作成できますが、SDK経由でも操作できます。
Dart SDKはFlutterでも利用できます。Flutterで使えると言うことは、iOS/Androidといったスマートフォンアプリやタブレットアプリはもちろん、Webやデスクトップアプリ開発でも利用できます。ぜひHexabaseをDart SDKとともに活用してください。