コース一覧
Next.js公開設計:SEO・画像最適化・デプロイ
自由拡張

Next.js公開設計:SEO・画像最適化・デプロイ

metadata、動的metadata、OGP、Image、フォント最適化、本番ビルド、マネージド環境・自サーバーへの公開、公開前チェックを扱う全13レッスンの公開プロジェクトです。fleamaを検索・SNS・表示速度まで整え、公開URLを持つ本番サービスとして完成させます。

1
メタデータ・OGP・画像
01. メタデータ15分
02. 動的メタデータ15分
03. OGP15分
04. 画像最適化15分
05. フォント最適化15分
06. つくる - 検索とSNSに強く20分
07. 第7章クイズ15分
2
デプロイと総合制作
01. 本番ビルド15分
02. マネージドへ公開15分
03. 自サーバー案15分
04. 公開前チェック15分
05. 自由拡張20分
06. 完成と次のステップ10分

自由拡張

最後の1機能は自分で決める

ここまで、作るものはこちらが決めてきました。残り2回のうち、この回だけは自分で決めます。公開した fleama に足りないと思う機能を1つ選び、設計してから作り、もう一度 push して公開し直します。

迷ったら次の3つから選んでください。どれも fleama にまだ無く、このコースで習ったものだけで作れます。

  • カテゴリ別の一覧 — /items/category/[name] を作り、shoes や bag だけを並べる
  • 新着順の並び替え — /items に ?sort=new を付けたときだけ並び順を変える
  • 出品者ページ — 出品した人ごとの一覧を /users/[id] に出す

いきなり書かずに、先に設計を書く

作り始める前に決めることは、毎回同じ4つです。

どこに置くか。 URL が決まればファイルの場所も決まります。Next.js ではここが一対一なので、URL を決めた時点で半分終わっています。

何を使うか。 動的ルート、searchParams、generateMetadata、route.ts、notFound のうち、どれが要るかを並べます。習ったものの組み合わせで足りるかどうかが、ここで分かります。

なぜ要るか。 使う人にとって何が良くなるのかを1行で書きます。書けない機能は、たいてい作っても使われません。

どの順で作るか。 3手くらいに割ります。一気に全部書くと、動かなくなったときにどこが原因か分からなくなります。

設計が書けていれば、手は動く

実務で新しい機能を任されたときにやるのも、ほとんどこれと同じです。新しい知識を仕入れる場面はそう多くなく、知っているものをどう組み合わせるかを決める時間のほうが長くなります。設計が1枚書けていれば、あとは前の章でやったことの繰り返しです。

書いた設計どおりに作り、手元で npm run build が通ることを確かめてから push します。

演習

足す機能を1つ選び、置き場所と使う仕組みと作る順番を設計表にまとめます。

ヒント

file は URL がそのままフォルダになります。/items/category/shoes なら app/items/category/[name]/page.tsx です

uses には 動的ルート や searchParams や generateMetadata のように、習った名前を並べます

steps は「ページを作る」「データを絞る」「リンクを張る」のように3手に割ります

layout.tsx
page.tsx
プレビュー

できているか

  • 足す機能に名前が付いている
  • なぜ要るのかを書いている
  • 置き場所を app/ から書いている
  • 使う仕組みを2つ以上あげている
  • 作る順番を3手以上に割っている
  • any で逃げていない
エディタを読み込んでいます