Back4App、Next.js、Vercelを使用した会議室予約アプリのチュートリアル
このチュートリアルでは、 Bookitという会議室予約システムを構築します。フロントエンドフレームワークとして Next.js を使用し、バックエンドサービスとして Back4App を使用します。ユーザー認証、部屋管理、予約機能を実装し、アプリを Vercel にデプロイします。
このチュートリアルを完了するには、次のものが必要です:
- Back4Appアカウントにログインし、プロジェクトダッシュボードに移動します。
- 左のサイドバーで、 データベース をクリックしてデータブラウザにアクセスします。
- データをモデル化するために、次のクラスを作成する必要があります:
デフォルトでは、Parseはユーザー認証を処理するため、このクラスを手動で作成する必要はありません。Parseは次のフィールドを自動的に管理します:
- email: ログイン用のメールアドレス
- password: パスワード(ハッシュ化)
- username: オプションのユーザー名
- 「データブラウザ」をクリックし、「クラスを作成」を選択し、「カスタム」を選択し、クラスの名前を「ルーム」とします。
- 次の列を追加します:
列名 | タイプ | 説明 |
---|---|---|
名前 | 文字列 | 部屋の名前 |
説明 | 文字列 | 部屋の説明 |
容量 | 番号 | 部屋が収容できる人数 |
アメニティ | 配列 | アメニティのリスト(テレビ、WiFiなど) |
価格 | 番号 | 時間あたりの価格 |
画像 | ファイル | 画像のURL |
オーナー | ポインター | ポイントは ユーザー クラスを指します |
- 別のカスタムクラスを作成 Booking.
- 次の列を追加:
列名 | タイプ | 説明 |
---|---|---|
部屋 | ポインタ | 次の Room クラスを指します |
ユーザー | ポインタ | 次の User クラスを指します |
チェックイン | 日付 | 予約の開始日時 |
チェックアウト | 日付 | 予約の終了日時 |
- 新しい Next.js プロジェクトを作成します:
- Parse JS SDK をインストールします:
- 次の pages/_app.js ファイルで、Back4App の資格情報を使って Parse を初期化します:
次の 'YOUR_APP_ID' と 'YOUR_JAVASCRIPT_KEY' を Back4App のアプリ資格情報に置き換えます。
登録フォームを持つ新しいページ pages/signup.js を作成します:
ユーザーログインのために pages/login.js を作成します:
保護されたルートには、Next.js API ルートを使用し、ユーザーが認証されているかどうかを確認できます:
利用可能な部屋をリストするために pages/index.js を作成します:
新しい部屋を追加するために pages/add-room.js を作成します(認可されたユーザー用):
部屋の詳細情報を表示するために pages/rooms/[id].js を作成します:
予約フォームを追加することで pages/rooms/[id].js に予約機能を追加します:
予約を確認しキャンセルするために pages/my-bookings.js を作成します:
- Vercel CLIをインストールします:
- 次のコマンドでNext.jsアプリをデプロイします:
プロンプトに従ってアプリをVercelにデプロイします。デプロイが完了すると、アプリは公開URLでライブになります。
このチュートリアルでは、BookitアプリをNext.jsをフロントエンドに、Back4Appをバックエンドに使用して構築しました。ユーザー認証、ルーム管理、予約機能を実装しました。最後に、アプリをVercelにデプロイしました。これで、検索、支払い統合、通知などの追加機能でアプリを拡張できます。