📋 Phase 1の全体目標
この4週間のプログラムを通じて、Bubbleの基本的な操作方法を習得し、簡単なWebアプリケーションを作成できるようになることを目指します。
- Bubbleエディターの基本的な使い方をマスターする
- UI要素を適切に配置してレスポンシブなデザインを作成できる
- 基本的なワークフローを設定して動的な機能を実装できる
- 複数ページのアプリケーション構造を理解する
📅 Week 1: Bubbleプラットフォームの理解とアカウント設定
🎯 学習目標
- Bubbleの基本概念とno-codeプラットフォームの特徴を理解する
- アカウント作成からエディター画面の基本操作まで習得する
- Bubbleエディターの各タブ(Design、Workflow、Data、Styles等)の役割を把握する
- 最初のページを作成して基本的な要素を配置できる
📚 詳細な学習内容
Day 1-2: Bubbleプラットフォームの理解
- No-codeとは何か、Bubbleの特徴と利点
- Bubbleで作成できるアプリケーションの種類
- 無料プランと有料プランの違い
- アカウント作成とプロフィール設定
Day 3-4: エディター画面の基本操作
- 新しいアプリの作成方法
- エディター画面のレイアウト理解
- 各タブ(Design、Workflow、Data、Styles、Settings、Logs、Plugins)の概要
- プレビュー機能の使い方
Day 5-7: 基本的な要素の配置
- Visual elementsの種類と特徴
- Text、Image、Button要素の配置
- 要素のプロパティ設定
- 基本的なレイアウト調整
💡 例題1: 簡単な自己紹介ページの作成
目標: 基本的な要素を使って自己紹介ページを作成する
ステップバイステップ手順:
- 新しいアプリを作成
- Bubbleのダッシュボードから「New app」をクリック
- アプリ名を「MyProfile」と入力
- 「Create app」をクリック
- ヘッダーテキストを追加
- 左パネルから「Text」要素をドラッグ
- ページ上部に配置
- 「Welcome to My Profile」と入力
- 右パネルでフォントサイズを24pxに設定
- プロフィール画像を追加
- 「Image」要素をドラッグしてテキストの下に配置
- サイズを150x150pxに設定
- 「Dynamic image」から任意の画像URLを設定またはアップロード機能を使用
- 説明文を追加
- もう一つ「Text」要素を追加
- 自己紹介文を入力
- フォントサイズを16px、行間を1.4に設定
- プレビューで確認
- 右上の「Preview」ボタンをクリック
- 作成したページが正しく表示されることを確認
🏆 Week 1 チャレンジ問題
初級 チャレンジ1: 会社紹介ページ
課題: Text、Image、Buttonを使って簡単な会社紹介ページを作成してください。
- 会社名(大きなタイトル)
- 会社ロゴ画像
- 会社説明文(3-4行)
- 「お問い合わせ」ボタン(機能は未実装でOK)
中級 チャレンジ2: 製品紹介カード
課題: 複数の要素を組み合わせて製品紹介カードを3つ作成してください。
- 各カードには製品画像、製品名、価格、説明文を含める
- 3つのカードを横並びに配置
- 統一されたデザインで作成
上級 チャレンジ3: レスポンシブレイアウト
課題: 画面サイズに応じてレイアウトが変わるページを作成してください。
- デスクトップ表示とモバイル表示でレイアウトを最適化
- Responsive設定を活用
- 各デバイスでプレビュー確認
✅ Week 1 学習チェックリスト
- □ Bubbleアカウントを作成できた
- □ 新しいアプリを作成できた
- □ エディター画面の各タブの役割を理解した
- □ Text要素を配置して編集できた
- □ Image要素を配置して画像を設定できた
- □ Button要素を配置してスタイルを変更できた
- □ プレビュー機能を使ってページを確認できた
- □ 要素のプロパティ(サイズ、色、フォントなど)を変更できた
📅 Week 2: UI要素の配置とデザイン基礎
🎯 学習目標
- 様々なUI要素(Input、Group、Repeating Group等)の使い方を習得する
- レスポンシブデザインの基本概念を理解して実践する
- Stylesタブを使った統一されたデザインシステムを構築できる
- レイアウト設定とアライメントを適切に使用できる
📚 詳細な学習内容
Day 1-2: 様々なUI要素の理解
- Input elements(Input、Multiline Input、Dropdown、Checkbox等)
- Container elements(Group、Repeating Group、Popup等)
- 各要素のプロパティと設定オプション
- 要素の階層構造とネスト
Day 3-4: レスポンシブデザインの基礎
- レスポンシブエンジンの仕組み
- Breakpointsの設定と使い方
- 要素のレスポンシブ設定(Column、Row、Fixed等)
- 各デバイスでのプレビューとテスト
Day 5-7: デザインシステムとスタイリング
- Stylesタブの使い方と重要性
- カスタムスタイルの作成と適用
- 色の設定とカラーパレット
- フォント設定とタイポグラフィ
💡 例題2: お問い合わせフォームの作成
目標: 様々なInput要素を使って機能的なお問い合わせフォームを作成する
ステップバイステップ手順:
- フォームの基本構造を作成
- 新しいページ「contact」を作成
- Groupを配置してフォームコンテナとする
- Groupの幅を400px、中央揃えに設定
- フォーム要素を追加
- 「お名前」ラベル用のTextを追加
- 名前入力用のInputを追加(Placeholder: “お名前を入力してください”)
- 「メールアドレス」ラベルとInput(Content format: Email)
- 「お問い合わせ内容」ラベルとMultiline Input
- 送信ボタンの追加
- 「送信」Buttonを追加
- ボタンのスタイルを調整(背景色、テキストカラー)
- レスポンシブ設定
- 各要素をColumnレイアウトに設定
- モバイル表示での確認と調整
- カスタムスタイルの適用
- Stylesタブで「Form Input」スタイルを作成
- 統一されたボーダー、パディング設定
- 各Input要素にスタイルを適用
💡 例題3: 商品一覧ページ(Repeating Group使用)
目標: Repeating Groupを使って商品カードのリストを作成する
ステップバイステップ手順:
- サンプルデータの準備
- Dataタブで新しいData Typeを作成(名前: Product)
- フィールド追加: name (text), price (number), image (image)
- App dataでサンプル商品を3-4個追加
- Repeating Groupの設定
- Repeating Groupを配置
- Type of content: Product
- Data source: Search for Products
- Layout style: Full list, Fixed cells
- セル内の要素配置
- Repeating Group内にImage要素を配置
- Dynamic image設定: Current cell’s Product’s image
- 商品名用のText: Current cell’s Product’s name
- 価格用のText: Current cell’s Product’s price
- カードデザインの調整
- Repeating Group cellにボーダーとシャドウを追加
- 要素間のスペーシング調整
- 統一されたカードレイアウト作成
🏆 Week 2 チャレンジ問題
初級 チャレンジ1: ユーザー登録フォーム
課題: 以下の項目を含むユーザー登録フォームを作成してください。
- ユーザー名(Input)
- メールアドレス(Email形式のInput)
- パスワード(Password形式のInput)
- 性別(Dropdown: 男性/女性/その他)
- 利用規約への同意(Checkbox)
- 登録ボタン
中級 チャレンジ2: ブログ記事一覧
課題: ブログ記事のData Typeを作成し、Repeating Groupで表示してください。
- Data Type「BlogPost」を作成(title, content, author, date, featured_image)
- サンプル記事を5個以上作成
- Repeating Groupでカード形式のレイアウト
- レスポンシブ対応(PC: 3列、タブレット: 2列、モバイル: 1列)
上級 チャレンジ3: ダッシュボードレイアウト
課題: 管理画面風のダッシュボードを作成してください。
- サイドバーナビゲーション
- ヘッダーバー(ロゴ、ユーザー情報)
- メインコンテンツエリア(統計カード×4、グラフエリア、最新情報リスト)
- 完全レスポンシブ対応
- 統一されたデザインシステム
✅ Week 2 学習チェックリスト
- □ 各種Input要素を適切に配置できた
- □ Groupを使って要素をまとめることができた
- □ Repeating Groupの基本的な使い方を理解した
- □ レスポンシブ設定を適用できた
- □ 複数のデバイスでプレビュー確認を行った
- □ Stylesタブでカスタムスタイルを作成できた
- □ 統一されたデザインでページを作成できた
- □ 要素の階層構造を理解してネストできた
📅 Week 3: ワークフロー設定の基本
🎯 学習目標
- Workflowタブの基本的な使い方と概念を理解する
- イベント(Event)とアクション(Action)の関係を把握する
- 条件分岐(Conditionals)を使った動的な動作を実装できる
- 基本的なデータ操作(作成、更新、削除)を行うワークフローを作成できる
📚 詳細な学習内容
Day 1-2: ワークフローの基本概念
- ワークフローとは何か、なぜ重要か
- イベント(Event)の種類と特徴
- アクション(Action)の種類と使い方
- 最初のシンプルなワークフロー作成
Day 3-4: データ操作の基本
- 「Create a new thing」アクション
- 「Make changes to thing」アクション
- 「Delete a thing」アクション
- データの参照とCurrent User
Day 5-7: 条件分岐とナビゲーション
- 条件分岐(Only when)の使い方
- 「Go to page」アクション
- 「Show/Hide」アクション
- エラーハンドリングの基本
💡 例題4: 簡単なTo-Doリストアプリ
目標: ワークフローを使ってタスクの追加・削除・完了機能を実装する
ステップバイステップ手順:
- データ構造の準備
- Data Type「Task」を作成
- フィールド: title (text), completed (yes/no), created_date (date)
- Privacy設定: 「Everyone can view this」に設定
- UI要素の配置
- タスク入力用のInput
- 「追加」ボタン
- タスク一覧表示用のRepeating Group(Type: Task)
- 各タスクに「完了」「削除」ボタン
- タスク追加のワークフロー
- 「追加」ボタンのクリックイベントを作成
- Action: Create a new thing (Thing: Task)
- title = Input’s value
- completed = no
- created_date = Current date/time
- 条件: Only when Input’s value is not empty
- タスク完了のワークフロー
- 「完了」ボタンのクリックイベントを作成
- Action: Make changes to thing (Thing: Current cell’s Task)
- completed = yes
- タスク削除のワークフロー
- 「削除」ボタンのクリックイベントを作成
- Action: Delete a thing (Thing: Current cell’s Task)
💡 例題5: 動的なコンテンツ表示
目標: 条件分岐を使って動的にコンテンツを表示・非表示する機能を実装する
ステップバイステップ手順:
- カスタムステートの設定
- ページのCustom statesに「show_details」(yes/no型)を追加
- 初期値: no
- UI要素の準備
- 「詳細を表示」ボタン
- 詳細情報を含むGroup(初期状態: 非表示)
- 「詳細を隠す」ボタン
- 表示ワークフロー
- 「詳細を表示」ボタンのクリックイベント
- Action 1: Set state (Element: Page, Custom state: show_details, Value: yes)
- Action 2: Show (Element: 詳細Group)
- 非表示ワークフロー
- 「詳細を隠す」ボタンのクリックイベント
- Action 1: Set state (Element: Page, Custom state: show_details, Value: no)
- Action 2: Hide (Element: 詳細Group)
- 条件付き表示の設定
- 各ボタンに条件付き表示を設定
- 「詳細を表示」ボタン: When Page’s show_details is no
- 「詳細を隠す」ボタン: When Page’s show_details is yes
🏆 Week 3 チャレンジ問題
初級 チャレンジ1: カウンターアプリ
課題: 数値を増減させるシンプルなカウンターを作成してください。
- 現在の数値を表示するText要素
- 「+1」「-1」ボタン
- 「リセット」ボタン(0に戻す)
- カスタムステートを使用
中級 チャレンジ2: 簡単な投票システム
課題: 選択肢に対して投票できるシステムを作成してください。
- Data Type「Poll」を作成(question, option1, option2, votes1, votes2)
- 投票画面で選択肢を表示
- 投票ボタンで投票数を増加
- 結果表示ページ(各選択肢の投票数とパーセンテージ)
- 重複投票防止の仕組み
上級 チャレンジ3: 動的フォームバリデーション
課題: リアルタイムでバリデーションを行うフォームを作成してください。
- メールアドレス形式チェック
- パスワード強度チェック(8文字以上、英数字含む)
- パスワード確認の一致チェック
- 各項目のエラーメッセージ表示
- すべての条件を満たした時のみ送信ボタンを有効化
✅ Week 3 学習チェックリスト
- □ Workflowタブの基本操作を理解した
- □ イベントとアクションの関係を把握した
- □ 「Create a new thing」でデータを作成できた
- □ 「Make changes to thing」でデータを更新できた
- □ 「Delete a thing」でデータを削除できた
- □ 条件分岐「Only when」を使用できた
- □ カスタムステートを設定・使用できた
- □ 「Show/Hide」アクションを使用できた
- □ 基本的なエラーハンドリングを理解した
📅 Week 4: ページ遷移と基本的なアプリ構造
🎯 学習目標
- 複数ページの作成とナビゲーションシステムを構築できる
- URLパラメータを使ったデータの受け渡しを理解する
- Popupやグループの表示制御を活用できる
- 一貫したナビゲーションとUX設計を実装できる
📚 詳細な学習内容
Day 1-2: ページ管理とナビゲーション
- 新しいページの作成と設定
- 「Go to page」アクションの詳細
- ナビゲーションメニューの作成
- Header/Footerの共通化
Day 3-4: データの受け渡し
- URLパラメータの仕組み
- 「Send data to page」の使い方
- 「Get data from page URL」でのデータ受信
- 動的なページコンテンツの表示
Day 5-7: ポップアップとモーダル
- Popupエレメントの作成と設定
- 「Show popup」「Hide popup」アクション
- モーダルダイアログの実装
- フォーム送信とフィードバック
💡 例題6: ブログシステムの構築
目標: 記事一覧ページと記事詳細ページを作成し、ナビゲーションを実装する
ステップバイステップ手順:
- データ構造の準備
- Data Type「Article」を作成
- フィールド: title, content, author, published_date, featured_image
- サンプル記事を5個作成
- 記事一覧ページ(index)
- ページタイトル「ブログ一覧」
- Repeating Group(Type: Article)
- 各記事カードに: タイトル、作成日、「詳細を見る」ボタン
- 記事詳細ページ(article)の作成
- 新しいページ「article」を作成
- Type of content: Article
- Data source: Get data from page URL
- 詳細ページのUI構築
- 記事タイトル: Current page Article’s title
- 記事内容: Current page Article’s content
- 作成日: Current page Article’s published_date
- 「一覧に戻る」ボタン
- ページ遷移の実装
- 一覧ページの「詳細を見る」ボタンのワークフロー
- Action: Go to page (Destination: article)
- Send data to page: Current cell’s Article
- 詳細ページの「一覧に戻る」ボタン: Go to page (Destination: index)
💡 例題7: ユーザープロフィール管理システム
目標: Popupを使ったプロフィール編集機能を実装する
ステップバイステップ手順:
- ユーザーデータの準備
- Userデータタイプにフィールド追加: display_name, bio, avatar
- 現在のユーザー情報表示エリア作成
- プロフィール編集Popupの作成
- 新しいPopup「ProfileEdit」を作成
- Type of content: User
- 編集フォーム: display_name, bio, avatar用のInput
- 「保存」「キャンセル」ボタン
- Popup表示ワークフロー
- 「プロフィール編集」ボタンのクリックイベント
- Action: Show popup (Popup: ProfileEdit)
- Send data to popup: Current User
- プロフィール更新ワークフロー
- 「保存」ボタンのクリックイベント
- Action 1: Make changes to thing (Thing: Popup ProfileEdit’s User)
- 各フィールドを対応するInputの値で更新
- Action 2: Hide popup (Popup: ProfileEdit)
- キャンセル機能
- 「キャンセル」ボタンのクリックイベント
- Action: Hide popup (Popup: ProfileEdit)
- 「Reset inputs」で入力内容をクリア
🏆 Week 4 チャレンジ問題
初級 チャレンジ1: 簡単な写真ギャラリー
課題: 画像一覧から詳細表示ができるギャラリーを作成してください。
- Data Type「Photo」(title, description, image_url)
- ギャラリーページ(画像一覧をグリッド表示)
- 詳細ページ(大きな画像とタイトル、説明文)
- ナビゲーション機能
中級 チャレンジ2: ECサイト的な商品管理
課題: 商品の一覧・詳細・カート機能を持つシステムを作成してください。
- 商品一覧ページ(カテゴリ別フィルタ機能)
- 商品詳細ページ(画像、説明、価格、「カートに追加」ボタン)
- カート機能(Popupで実装、数量変更、削除機能)
- 商品検索機能
上級 チャレンジ3: マルチステップフォーム
課題: 複数ページにまたがる申込みフォームを作成してください。
- ステップ1: 基本情報入力
- ステップ2: 詳細情報入力
- ステップ3: 確認画面
- ステップ4: 完了画面
- 各ステップでバリデーション
- 進行状況表示
- 前のステップに戻る機能
✅ Week 4 学習チェックリスト
- □ 新しいページを作成できた
- □ 「Go to page」でページ遷移を実装できた
- □ URLパラメータでデータを受け渡しできた
- □ 動的なページコンテンツを表示できた
- □ Popupを作成して表示・非表示を制御できた
- □ Popupでデータの編集・保存を実装できた
- □ 一貫したナビゲーションシステムを構築できた
- □ 複数ページにわたるアプリケーションを設計できた
🎓 Phase 1 修了後のステップ
Phase 1を完了したら、以下の内容でスキルアップを続けましょう:
- Phase 2: データベース設計とプライバシー設定の詳細学習
- Phase 3: OpenAI APIや外部サービスとの連携
- Phase 4: 実際のMVP開発プロジェクト
📚 追加学習リソース
- Bubble Academy – 公式学習プラットフォーム
- Bubble Reference – 機能リファレンス
- Bubble Forum – コミュニティフォーラム