ホームページ >ウェブフロントエンド >jsチュートリアル >shadcn/UI とマニフェストを使用してわずか数分でニュースレターの登録フォームを作成する方法
今日のデジタル世界では、MVP を構築する場合でも、スタートアップを立ち上げる場合でも、厳しい納期でプロジェクトを遂行する場合でも、アイデアを迅速にテストし、ユーザーと対話できることが非常に重要です。ニュースレター購読フォームの作成は、多くの場合、コンセプトを検証し、初期ユーザーを関与させ、関心のある人々のコミュニティを構築し、フィードバックを収集するために必要です。
ターンキー ソリューションは高価になる可能性がありますが、無料ツールの使用は依然として複雑で時間がかかります。
このチュートリアルでは、ニュースレター購読フォームを 20 分以内に作成する方法を説明します。複雑な設定や面倒な設定は必要ありません。完全に機能するサブスクリプション システムを備えた単なるフォームです!
このチュートリアルが終わるまでに、最初の購読者を集めるための完全に機能するフォームが完成します。準備ができて?行きましょう!
Manifest は、オープンソースの Backend-as-a-Service (BaaS) です。これにより、アプリケーションの完全なバックエンドを作成できます。
単一の YAML ファイルに入力するだけで、データベース、API、および技術者以外の管理者にとって使いやすい管理パネルを備えたバックエンドが生成されます。
これにより、バックエンドの複雑さに対処するのではなく、製品の構築に集中できます。
本日の時点で、MVP をリリースしたばかりです。製品を正しい方向に進化させるためにコミュニティからのフィードバックを期待しています。
マニフェストは GitHub で入手できるので、プロジェクトが気に入ったらお気軽に ⭐ を付けてください!
私たちの目標は、サブスクリプションフィールドと通知メッセージを表示する単一の画面です。シンプルかつ効果的で機能的です。得られるものは次のとおりです:
フロントエンド、つまりニュースレター購読フォームのビジュアル部分を使用してプロジェクトを作成することから始めます。
Next.js で shadcn/UI を使用することにしました。ターミナルで次のコマンドを実行します:
npx shadcn@latest init -d
新しい Next.js プロジェクトを開始し、プロジェクトに名前を付けるように求められます。 「Y」と答えて、ニュースレター形式と名付けます。
プロジェクトが作成されたら、次のファイルを使用してフロントエンドを準備する必要があります:
npm run dev を実行して開発サーバーを起動します。
ターミナルで提供されたリンクをクリックします。デフォルトの Web ブラウザで https://localhost:3000 にある NextJS のようこそ画面が開きます。
app/page.tsx を編集してフォームを作成しましょう。 shadcn は TailwindCSS と連携して動作するため、そのクラスを使用して目的のインターフェイスを構築します。次のコードをコピーします:
export default function Home() { return ( <div className="w-full lg:grid lg:grid-cols-5 min-h-screen flex sm:items-center sm:justify-center sm:grid"> <div className="flex items-center justify-center py-12 col-span-2 px-8"> <div className="mx-auto grid max-w-[540px] gap-6"> <div className="grid gap-2 text-left"> <h1 className="text-3xl font-bold">Subscribe to our Newsletter! ?</h1> <p className="text-balance text-muted-foreground"> Get the latest news, updates, and special offers delivered straight to your inbox. </p> </div> <form className="grid gap-4">{/* Newsletter form here */}</form> </div> </div> <div className="hidden bg-muted lg:block col-span-3 min-h-screen bg-gradient-to-t from-green-50 via-pink-100 to-purple-100"></div> </div> ); }
左側にフォーム用の領域、右側にグラデーション スペースがある分割画面が表示されます。
次に、フォームを追加しましょう。これには、次の shadcn コンポーネントが含まれます:
次のコマンドを使用して、ターミナルからこれらのコンポーネントをインストールします。
npx shadcn@latest add input npx shadcn@latest add button
次に、次のように page.tsx ファイルにコンポーネントをインポートします。
import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input";
これら 2 つのコンポーネントを使用するには、既存の