【初心者向け】Airbnbのクローン作成 Part1|ノーコード開発ナレッジ【Bubble】

概要

Bubble公式ホームページでは「How to Buidシリーズ」と称して、有名アプリのクローンを作成する方法が公開されています。

本記事では民泊事業の最大手であり、その創業エピソードでも有名な「Airbnb」のクローンを作成します。

全て日本語で解説しますので、初心者の方も安心して下さい。

はじめに

Bubbleのアカウントをお持ちでない場合は、以下のリンクからユーザー登録して下さい。本記事で紹介する機能はすべて無料プランで作成できます。(料金の詳細はこちらをご覧ください:Bubbleの料金は?

方法

1.エレメントの設置

まず、本記事で作成する「Bubblebnb」に必要なページを考えます。

Bubbleの利点の1つに、データをページに送る機能が挙げられます。1つのページをデザインすることで、テキストや画像などの各要素は、データベースに保存されたデータから自動的に入力されます。そのため、1つの汎用的なページを作れば、部屋ごとに異なるページを作る必要はありません。

民泊レンタルマーケットプレイスのMVPを構築するため、以下のページを作成します。

  • Login page: ユーザーがアプリにログインまたは新規登録するための画面
  • Home page: プラットフォームに掲載されている全ての部屋の情報を表示
  • Create room: ユーザーがホストとなる部屋を登録するためのページ
  • Room detail: ユーザーレビューを含む部屋の詳細情報を表示
  • Checkout: ユーザーが部屋の予約を決済するためのページ

各ページのデザインはつくりたいサービスに応じて変更してください。

STEP.1
エディタ画面の左上、ページ名の表示をクリックします。

STEP.2
"Add a new page..."をクリックします。

STEP.3
ページ名称を入力し、"CREATE"をクリックします。

STEP.4
STEP1~STEP3の手順で上記5つのページを作成します。

STEP.5
"Login page"に以下の画像の通りエレメントを設置します。フォントや色などの細かいデザインは違ってても大丈夫です。

ユーザーの情報を入力するInputと、ユーザー画像をアップロードするためのPicture Uploader、アクションを始動させるためのButtonを設置します。

*赤字のテキストはエレメントの種類の説明ですので、実際には不要です。

STEP.6
"Create room"に以下の画像の通りエレメントを設置します。

部屋の情報を入力するInput、複数行の説明を入力するMultilineInput、部屋の画像をアップロードするためのPicture Uploader、そしてアクションを始動させるためのButtonを設置します。

*一泊当たりの料金を入力するInputは、”Content format”を”Integer”に変更して下さい。

STEP.7
"Home page"に以下の画像の通りエレメントを設置します。

データベースにアクセスするためのRepeating Group、画像を表示するImage、名称および一泊の料金を表示するTextを設置します。

各エレメントの設定は後ほど説明します。

STEP.8
"Room detail"に以下の画像の通りエレメントを設置します。

画像を表示するImage、名称・詳細・一泊の料金を表示するText、部屋を予約するためのButtonを設置します。

各エレメントの設定は後ほど説明します。

STEP.9
"Checkout"に以下の画像の通りエレメントを設置します。

各エレメントの設定は後ほど説明します。

2.データベースの設計

Bubbleにはデータ型(テキスト、画像、数字、etc)があらかじめ組み込まれているため、固有のデータ型を持つさまざまなデータ構造を簡単に設計できます。

Bubblebnbを構築するため、次のデータタイプとデータフィールドを作成します。

STEP.1
データタイプ「お部屋」を作成します。

Data type: お部屋

Fields:

  • 名称
  • 詳細
  • 画像
  • 1泊あたりの料金

STEP.2
データタイプ"User"にデータフィールドを追加します。

Data type: User

Fields:

  • プロフィール画像
  • 電話番号
  • 予約したお部屋 ー データタイプ「予約詳細」のリスト型

3.ユーザーの新規登録

ワークフローの設定では、「ある動作が起きたら、特定の動作を行う」というロジックを指定します。

例えば、新規登録ボタンが押されたら、入力された情報をもとにデータベースに新しいユーザーを登録する。という感じです。

Bubbleでは「ある動作」をイベント(event)、「特定の動作」をアクション(action)と呼びます。

まずは、ユーザー登録のフローを設定します。

STEP.1
"Login page"の「新規登録」ボタンをクリックした時のワークフローを設定します。

STEP.2
"Sign the user up"アクションを追加します。

STEP.3
メールアドレス、パスワードをそれぞれ指定します。

STEP.4
"Make changes to thing ..."アクションを追加します。

STEP.5
以下の通りに設定します。

これで入力された情報をもとにユーザーが新規登録されます。

まとめ

パート1では、エレメントの設置、データベースの設計を中心に説明しました。パート2ではワークフローを中心に機能を作成します。