NextJSテンプレート

Back4App、Next.js、Vercelを使用した会議室予約アプリのチュートリアル

23min

このチュートリアルでは、 Bookitという会議室予約システムを構築します。フロントエンドフレームワークとして Next.js を使用し、バックエンドサービスとして Back4App を使用します。ユーザー認証、部屋管理、予約機能を実装し、アプリを Vercel にデプロイします。

1. 前提条件

このチュートリアルを完了するには、次のものが必要です:

  • Back4Appアカウント( Back4App にサインアップ)
  • Back4Appプロジェクト( このガイド に従ってください)
  • ローカルマシンにNode.jsがインストールされていること(インストールガイド
  • JavaScript、Next.js、およびREST APIの基本的な知識(必要に応じて、 JavaScriptの基礎 を参照してください)

2. Back4Appの設定

  1. Back4Appアカウントにログインし、プロジェクトダッシュボードに移動します。
  2. 左のサイドバーで、 データベース をクリックしてデータブラウザにアクセスします。
  3. データをモデル化するために、次のクラスを作成する必要があります:

2.1. ユーザー クラスを作成する

デフォルトでは、Parseはユーザー認証を処理するため、このクラスを手動で作成する必要はありません。Parseは次のフィールドを自動的に管理します:

  • email: ログイン用のメールアドレス
  • password: パスワード(ハッシュ化)
  • username: オプションのユーザー名

2.2. ルーム クラスを作成する

  1. データブラウザ」をクリックし、「クラスを作成」を選択し、「カスタム」を選択し、クラスの名前を「ルーム」とします。
  2. 次の列を追加します:

列名

タイプ

説明

名前

文字列

部屋の名前

説明

文字列

部屋の説明

容量

番号

部屋が収容できる人数

アメニティ

配列

アメニティのリスト(テレビ、WiFiなど)

価格

番号

時間あたりの価格

画像

ファイル

画像のURL

オーナー

ポインター

ポイントは ユーザー クラスを指します

2.3. 次の作成 Booking クラス

  1. 別のカスタムクラスを作成 Booking.
  2. 次の列を追加:

列名

タイプ

説明

部屋

ポインタ

次の Room クラスを指します

ユーザー

ポインタ

次の User クラスを指します

チェックイン

日付

予約の開始日時

チェックアウト

日付

予約の終了日時

3. Next.js と Parse SDK の設定

  1. 新しい Next.js プロジェクトを作成します:
Bash

  1. Parse JS SDK をインストールします:
Bash

  1. 次の pages/_app.js ファイルで、Back4App の資格情報を使って Parse を初期化します:
JS


次の 'YOUR_APP_ID''YOUR_JAVASCRIPT_KEY' を Back4App のアプリ資格情報に置き換えます。

4. ユーザー認証の実装

4.1. ユーザー登録

登録フォームを持つ新しいページ pages/signup.js を作成します:

JS


4.2. ユーザーログイン

ユーザーログインのために pages/login.js を作成します:

JS


4.3. 保護されたルート

保護されたルートには、Next.js API ルートを使用し、ユーザーが認証されているかどうかを確認できます:

JS


5. ルーム管理

5.1. 利用可能な部屋の表示

利用可能な部屋をリストするために pages/index.js を作成します:

JS


5.2. 部屋の追加

新しい部屋を追加するために pages/add-room.js を作成します(認可されたユーザー用):

JS


5.3. 部屋の詳細

部屋の詳細情報を表示するために pages/rooms/[id].js を作成します:

JS


6. 予約システム

6.1. 部屋の予約

予約フォームを追加することで pages/rooms/[id].js に予約機能を追加します:

JS


6.2. 予約の確認とキャンセル

予約を確認しキャンセルするために pages/my-bookings.js を作成します:

JS


7. Vercelへのデプロイ

  1. Vercel CLIをインストールします:
Bash

  1. 次のコマンドでNext.jsアプリをデプロイします:
Bash


プロンプトに従ってアプリをVercelにデプロイします。デプロイが完了すると、アプリは公開URLでライブになります。

8. 結論

このチュートリアルでは、BookitアプリをNext.jsをフロントエンドに、Back4Appをバックエンドに使用して構築しました。ユーザー認証、ルーム管理、予約機能を実装しました。最後に、アプリをVercelにデプロイしました。これで、検索、支払い統合、通知などの追加機能でアプリを拡張できます。