【Cursor × Next.js】ランディングページを1日で作る5工程を指示文つきで解説

公開日: 2026年9月7日 · 読了目安 10 分

Cursor と Next.js でランディングページを約7時間で公開する5つの工程を解説。Tailwind CSS と shadcn/ui の土台づくり、セクション構成の決め方、そのまま使える指示文、動きのあるセクションの入れ方、Vercel へのデプロイと公開前の確認まで。

Cursor と Next.js でランディングページを1日で作るには

Cursor に「LP を作って」と頼むと、骨組みは数分で出てきます。

ところが、そこから見た目を整えて動きを付け、公開するまでに何日もかかってしまう。そんな経験がある方は多いはずです。

1日で公開まで進めたいなら、すべてを生成させるのをやめて、役割を分けてください。

  • 骨組みは Cursor に生成させる

  • 動きのあるセクションは完成品から選ぶ

  • 文言と仕上げは人が指示する

この分け方で、合計およそ7時間の作業に収まります。

この記事では、次の5つの工程を順に説明します。各工程の指示文と、1日の時間割も載せています。

  • 工程1:Next.js + Tailwind CSS + shadcn/ui で土台を作る

  • 工程2:セクション構成をコードの前に決める

  • 工程3:動きの少ないセクションを生成し、動きのあるセクションは選んで入れる

  • 工程4:Cursor への統合指示で、配置と依存とブランドを揃える

  • 工程5:Vercel にデプロイし、公開前に3点を確認する

Cursor に LP を全部生成させると1日で終わらない理由

Cursor と Next.js の組み合わせは速い一方で、実際に進めると3つの壁に当たります。

  • デザインがどこかで見た SaaS のような顔になる

  • 動きの部分だけ品質が追いつかず、頼み直しが続く

  • セクションごとに余白や色がばらばらで、1枚のページとしてまとまらない

どれも「エージェントに任せる範囲」が広すぎることから起きます。土台と構成を人が先に決め、動きは実物を見て選べば、頼み直しの回数が大きく減ります。

以下の5工程は、この考え方に沿って並べています。

工程1:LP の土台を Next.js と shadcn/ui で作る

土台選びで迷う時間がいちばんもったいない部分です。LP なら Next.js(App Router)と Tailwind CSS、shadcn/ui の組み合わせに決めてしまいましょう。

Cursor のエージェントが書き慣れているスタックなので、指示のぶれが小さくなります。

shadcn/ui はライブラリとして読み込むのではなく、コンポーネントのソースを自分のリポジトリにコピーする方式です。

あとから色や余白をブランドに合わせて書き換えやすく、LP のような一点もののページと相性がよい作りです。

自分で打つ場合のコマンドは次のとおりです。

Cursor に「Next.js の App Router プロジェクトを作成し、Tailwind CSS と shadcn/ui をセットアップして」と任せても問題ありません。

bash
npx create-next-app@latest my-lp
cd my-lp
npx shadcn@latest init
npx shadcn@latest add button card accordion

工程2:ランディングページのセクション構成を先に決める

LP の出来は、実装の前の構成で大半が決まります。定番の並びは次のとおりです。

「ヒーロー → 課題と共感 → 機能・特徴 → 実績・ロゴ → 料金 → FAQ → 最後の CTA」

B2B なら実績を前に、個人向けなら料金を後ろに、というように順番だけを調整します。

このとき、各セクションに動きを付けるかどうかも決めておきます。全部を動かすとページのテンポが崩れます。

そのため、強い動きはヒーローと最後の CTA(申し込みや問い合わせへ誘う区画)の2か所に絞るのがおすすめです。

構成メモは、そのまま Cursor への指示文になります。次のように渡すと、骨組みが一度で出てきます。

text
app/(marketing)/page.tsx に次の構成で LP の骨組みを作って。
各セクションは components/sections/ に1ファイルずつ分ける。

1. Hero(動きあり。あとで差し替えるので仮のままでよい)
2. Problem(課題と共感)
3. Features(機能3つ)
4. Logos(導入企業のロゴ)
5. Pricing(3プラン)
6. FAQ(アコーディオンで5問)
7. FinalCta(動きあり。あとで差し替える)

LP の page.tsx はセクションを並べるだけにする

page.tsx はセクションを並べるだけにしておくと、あとから入れ替えるのが簡単です。

ページ本体はサーバーコンポーネントのままにし、動きのあるセクションだけをクライアントコンポーネントにします。

app/(marketing)/page.tsx
import { Hero } from "@/components/sections/Hero";
import { Problem } from "@/components/sections/Problem";
import { Features } from "@/components/sections/Features";
import { Logos } from "@/components/sections/Logos";
import { Pricing } from "@/components/sections/Pricing";
import { Faq } from "@/components/sections/Faq";
import { FinalCta } from "@/components/sections/FinalCta";

export default function Page() {
  return (
    <main>
      <Hero />
      <Problem />
      <Features />
      <Logos />
      <Pricing />
      <Faq />
      <FinalCta />
    </main>
  );
}

工程3:LP の動きのあるセクションは完成品から選ぶ

動きの少ないセクションは、工程2の構成メモをもとに Cursor に生成させれば十分です。課題や機能、料金、FAQ がこれにあたります。

文言は仮のままで進め、あとでまとめて推敲します。

1日で終わるかどうかの分かれ道は、ヒーローと最後の申し込みの区画です。

入場アニメーションやスクロール連動を Motion(旧 Framer Motion)で書き起こすと、1つのセクションに半日かかることも珍しくありません。

ここは自分で書かずに、ブラウザで動きを確かめられる完成品から選ぶと時間を読めます。

イージングやタイミングは静止画ではわかりません。実際に動く状態で確かめてから選んでください。

自分で書く場合の基本は、ヒーローのアニメーションを解説した記事にまとめています。https://design-layer.com/ja/articles/nextjs-animated-hero-section-guide

工程4:LP のセクションを Cursor への指示文で統合する

選んだセクションのコードを Cursor の Agent に貼り、次の型で指示します。

仮で置いた Hero を差し替える形にすると、構成を崩さずに済みます。

text
この React セクションで components/sections/Hero.tsx を置き換えて。
- Tailwind のクラスはそのまま使う
- 足りない npm パッケージは package.json に追加する
- 見出し・CTA・リンクを自社のプロダクトに合わせて書き換える
- 色と余白は既存のデザイントークンに合わせる
- page.tsx はサーバーコンポーネントのままにする

Next.js のビルドエラーが出たときの直し方

motion(旧 Framer Motion)や lucide-react が足りずにビルドが止まることがあります。そのときは、コピーしたコードの import をエージェントに読ませ、依存の追加を頼みます。

エラーの文面をそのまま貼るのが、いちばん早い直し方です。

ブラウザでしか動かない機能を、サーバー側の部品で使うとエラーになります。よく出るのは「useState は Client Components でしか動かない」という意味の英語のエラーです。

直し方は、そのファイルの先頭に "use client"(この部品はブラウザで動かす、という印)を書くことです。

ページ全体のファイルに書くのではなく、動くセクションのファイルだけに付けてください。

LP のセクション同士の統一感を出す

最後に、ページ全体へ一度だけ指示を出します。たとえば「全セクションの上下の余白を py-24 に揃え、見出しのサイズを統一して」のようにです。

セクションごとに頼むより、まとめて頼む方がばらつきが残りません。

工程5:LP を Vercel にデプロイして公開する

公開は、GitHub のリポジトリを Vercel に接続すれば完了します。

独自ドメインは、ダッシュボードで追加して DNS を設定すれば割り当てられます。DNS の反映には時間がかかることがあります。

公開の前に、ページのタイトルと説明文(description)を metadata で設定しておきます。

SNS でシェアされたときに出る画像(OGP 画像)も用意します。

この画像は、app フォルダに opengraph-image.png という名前で置くと自動で使われます。

app/layout.tsx
import type { Metadata } from "next";

export const metadata: Metadata = {
  title: "プロダクト名|一言で伝わる価値",
  description: "誰の、どんな悩みを、どう解決するかを1〜2文で。",
};

ランディングページの公開前に見る3つのポイント

  • タイトルと description、OGP 画像が設定されているか

  • スマホ幅で動きが重すぎないか(実機でスクロールして確かめる)

  • 申し込みボタンのリンク先と計測タグが正しいか

動きの強さは、プレビューで確かめた値を起点に delay と duration を少しずつ調整します。

特にスマホでは、動きを弱めるだけで体感の速さが大きく変わります。

ランディングページを1日で作る時間割(約7時間)

ここまでの工程を1日に並べると、次のようになります。待ち時間にほかの作業を重ねるのがコツです。

  • 午前(2時間):工程1と2。エージェントが土台を作っている間に、セクション構成のメモを書く

  • 午後の前半(2時間):工程3の前半。課題・機能・料金・FAQ を、構成メモを指示文にして生成する

  • 午後の後半(1.5時間):工程3の後半と工程4。ヒーローと最後の CTA を選んで組み込む

  • 夕方(1.5時間):文言の推敲とトークン合わせ、OGP の設定、Vercel への公開

初めてのときは、工程4のエラー対応で30分ほど延びることがあります。時間割は目安として使ってください。

LP の動きのあるセクションをカタログから選ぶ方法

ヒーローで絞り込んだ DesignLayer のコンポーネント一覧
ヒーローで絞り込んだ DesignLayer のコンポーネント一覧

工程3の「選ぶ」部分の置き場として、DesignLayer を使う方法があります。

モーション付きの React + Tailwind CSS のセクションを、ブラウザで動かして確かめられるカタログです。閲覧にはアカウントもカードも要りません。

気に入ったセクションで Copy for Cursor を押すと、次のものがまとめてコピーされます。

  • エージェントが読みやすい統合指示

  • ライブプレビューの URL

  • 本体の TSX

  • 必要な npm 依存の一覧

無料枠は日本時間で1日3回です。

「午後はヒーローと最後の申し込みの区画の2つ」と決めておけば足ります。https://design-layer.com/ja/components

コピーしたものを Cursor に貼る手順は、別の記事で詳しく説明しています。https://design-layer.com/ja/articles/cursor-react-motion-components-guide

Cursor と Next.js の LP づくりでよくある質問

  • 土台づくりはエージェントに任せられるので、作ること自体は可能です。

    ただし、サーバーコンポーネントと "use client" の違いを知らないと、工程4のエラーで時間を取られます。

    先に基本を押さえておくと安心です。https://design-layer.com/ja/articles/nextjs-components-guide

まとめ:Cursor と Next.js でランディングページを作る手順

  • 土台は Next.js + Tailwind CSS + shadcn/ui に決め、迷う時間をなくす

  • セクション構成と「どこを動かすか」をコードの前に決める

  • 動きの少ないセクションは生成し、ヒーローと最後の申し込みの区画は動きを見て選ぶ

  • 指示文には配置先と依存、トークン合わせを書く

  • 公開前に、タイトルと説明文・スマホでの動き・ボタンのリンクを確かめる

まずは工程1と2を今日の午前中に終わらせてみてください。構成メモができれば、残りの工程はそのメモを指示文にして進めるだけです。

動きのあるセクションを選ぶときは、カタログで実際の動きを見比べてください。https://design-layer.com/ja/components

関連ガイド

【Cursor × Next.js】ランディングページを1日で作る5工程を指示文つきで解説 | DesignLayer