共有バックエンド
概要
MeDo では、複数のアプリで 1 つのバックエンドを共有できます。Website、App、管理ダッシュボードは、フロントエンドを独立させたまま、同じデータとバックエンドサービスを再利用できます。バックエンドを一度構築すれば、製品の成長に合わせてチャネル別のアプリを追加し、すべてのアプリでビジネスデータを同期できます。
共有バックエンドが適しているケース
複数のアプリが同じユーザーや業務プロセスを支える場合に、共有バックエンドが役立ちます。主な例は次のとおりです。
- E コマース: 顧客向けストアと販売者向け管理画面で、商品、顧客、注文を共有します。
- 業務管理: 従業員 App と管理ダッシュボードで、アカウント、権限、ワークフローを共有します。
- コンテンツプラットフォーム: クリエイター向けツールと読者向けサイトで、公開コンテンツとエンゲージメントデータを共有します。
- SaaS 製品: 顧客向けアプリと運用ダッシュボードで、テナントとサブスクリプションのデータを共有します。
- AI 製品: Website と App で、ユーザーアカウント、保存済みの出力、利用履歴を共有します。
共有バックエンドを使ってアプリを作成する
- Project を開き、Create project を選択します。
- 新しいアプリの要件を入力し、Website や App など適切なアプリ種別を選択します。
- 別のバックエンドを作成せず、既存のプロジェクトを共有バックエンドとして選択します。
- バックエンドを再利用するプロジェクトを確認し、新しいアプリの生成を続けます。
- 生成されたアプリで共有データを追加または変更する前に、データモデルと権限を確認します。
新しいアプリは、選択したプロジェクトのバックエンド設定、データ、対応するバックエンドサービスを再利用します。フロントエンドは独立しているため、バックエンドを作り直すことなく、別のユーザー層やデバイス向けに設計・更新できます。
共有バックエンドを使うアプリを管理する
プロジェクト管理
Project ページの Shared Backend グループには、共有バックエンドを利用するプロジェクトがまとめて表示されます。関連するアプリの検索、バックエンドの稼働状況の確認、アプリごとのバックエンド有効化の管理に使用できます。
各アプリは引き続き独立したプロジェクトです。製品上で共有されることが明示されている設定を除き、公開、アクセス権、アプリ固有の設定は個別に管理されます。
エディターでの管理
共有バックエンドに接続されたアプリを編集すると、エディター上部のプロジェクト切り替えメニューに、同じバックエンドへ接続された他のアプリが表示されます。プロジェクト一覧へ戻らずに、顧客向け画面、運用ダッシュボード、その他のチャネル別アプリを切り替えられます。
共有データ構造やバックエンドロジックの変更は、接続されたすべてのアプリに影響する可能性があります。フィールドの削除、権限の変更、Edge Function の更新を行う前に、他のアプリがその機能に依存していないことを確認してください。
共有されるバックエンドリソース
同じバックエンドに接続されたアプリでは、次のリソースを共有できます。
- Database: ユーザー、商品、注文などのテーブル構造とビジネスデータ。
- Storage: アップロードされたファイルやその他の保存済みアセット。
- Auth: 一貫した認証システムを実現するログイン設定とユーザーアカウント。
- Edge Functions: 接続されたすべてのアプリから呼び出せる、デプロイ済みのサーバーサイド関数。
たとえば、顧客向け Web サイト、管理ダッシュボード、オーナー App で、同じ顧客、メニュー、注文を利用できます。Web サイトで受け付けた注文はすぐに管理ダッシュボードへ表示され、オーナー App の指標にも反映されます。
料金と利用量
Skills
Skills はアプリごとに設定され、料金も個別に計算されます。同じバックエンドに接続しても、Skill の設定、無料利用枠、Credits の消費量は合算されません。
バックエンド
バックエンドの有効化料金もアプリごとに計算されます。複数のアプリが同じバックエンドを共有している場合でも、バックエンドを有効にした各アプリには 1 アプリあたり 1 日 2 Credits が必要です。たとえば、顧客向け Web サイト、管理ダッシュボード、オーナー App の 3 つが 1 つのバックエンドを共有する場合、バックエンドを有効にした 3 アプリとして計算されます。
現在の Credits のルールと消費の詳細については、クレジットシステムを参照してください。
メリット
- 1 つのバックエンドで複数チャネルに対応: Website、App、管理ダッシュボードで同じバックエンドを再利用できます。
- フロントエンドを個別に開発: バックエンドを重複して構築せず、対象ユーザーごとにナビゲーションや業務フローを最適化できます。
- データの一貫性を維持: 接続されたすべてのアプリが同じビジネスデータを読み書きします。
- 段階的に拡張: データモデルやサービスを作り直さず、既存の製品に新しいチャネルを追加できます。
ベストプラクティス:マルチチャネルのレストラン注文システム
この例では、1 つのバックエンド上に 3 つのアプリを作成し、レストランの注文から運営管理までを一貫して支えます。
- 顧客向け Web サイト: メニューの閲覧、注文、注文状況の確認に使用します。
- 管理ダッシュボード: スタッフが注文を処理し、ステータスとメニューを管理します。
- オーナー App: 売上、注文状況、人気商品、未処理の作業を確認します。
3 つのアプリは、同じ顧客、メニュー、注文、運用データを利用します。
ステップ 1:顧客向け Web サイトを作成する
プロンプト
レストランの注文 Web サイトを作成してください。顧客はカテゴリ別にメニューを閲覧し、オプションや追加トッピングを選択してカートへ追加し、注文できます。注文履歴では「新規」、「準備中」、「受け取り可能」、「完了」のステータスを確認でき、過去の注文を再注文できるようにしてください。
機能
- メニューの閲覧とカテゴリ
- オプションと追加トッピング
- カートと注文確定
- 注文履歴
- 注文ステータスの確認
- 過去の注文から再注文
ステップ 2:管理ダッシュボードを作成する
2 つ目のアプリを作成し、顧客向け Web サイトのプロジェクトを共有バックエンドとして選択します。
プロンプト
レストラン注文 Web サイトと同じバックエンドを使用して、スタッフ向けの管理ダッシュボードを作成してください。管理者ログイン、ステータス別の注文絞り込み、注文ステータスの更新、メニュー項目の管理、本日の注文数、本日の売上を含めてください。
機能
- 管理者ログイン
- 注文一覧とステータス絞り込み
- 注文ステータスの更新
- メニュー項目の管理
- 本日の注文数
- 本日の売上
ステップ 3:オーナー App を作成する
3 つ目のアプリを作成し、同じプロジェクトを共有バックエンドとして選択します。
プロンプト
顧客向け Web サイトおよび管理ダッシュボードと同じバックエンドを使用して、オーナー App を作成してください。本日の売上、注文数、人気商品、未処理の注文、売上と注文の推移、新規注文の通知を表示してください。
機能
- 店舗運営の概要
- 本日の売上と注文数
- 未処理の注文
- 人気商品
- 売上と注文の推移
- 新規注文の通知