Nuxt.jsはVue.jsを基盤にした現代的なウェブアプリケーションフレームワークです。サーバーサイドレンダリング(SSR)をサポートし、アプリの初期読み込み速度やSEO向上に貢献します。
Vue.jsのエコシステムを活用しており、ルーティングやステート管理を自動化し、開発者が効率的にアプリケーションを構築できる環境を提供します。モジュールベースの設計により、PWAやGoogle Analyticsの統合などの拡張機能が容易に利用でき、ディレクトリ構造に基づいた自動ルーティングシステムがページ管理をシンプルにします。
コミュニティと公式ドキュメントの充実もあって、学習や開発の支援が強化されています。Nuxt.jsは、現代的で高性能なウェブアプリケーションを効率よく開発するための理想的な選択肢です。
インストールする
このコマンド(npx create-nuxt-app <project-name>)を実行すると、最新バージョン の create-nuxt-app パッケージがインストールされます。インストールの確認として、「同意するかどうか」が尋ねられます。問題がなければ y を入力して同意してください。
npx nuxi@latest init <project-name>でもnuxtのインストールは出来ます。
D:\mynode>npx create-nuxt-app nuxt3-app
Need to install the following packages:
create-nuxt-app@5.0.0
Ok to proceed? (y) Bash色々聞かれるので最初に試す程度でしたら下記の内容で良いと思います。
Project name: nuxt3-app (プロジェクト名)
Programming language: JavaScript (プログラミング言語)
Package manager: Npm (パッケージマネージャ)
UI framework: Bootstrap Vue (UIフレームワーク)
Template engine: HTML (テンプレートエンジン)
Nuxt.js modules:(空欄) (特定のモジュールは選択せずに進める)
Linting tools:(空欄) (特定のLintingツールは選択せずに進める)
Testing framework: Jest (テストフレームワーク)
Rendering mode: Universal (SSR / SSG) (レンダリングモード)
Deployment target: Static (Static/Jamstack hosting) (デプロイメントターゲット)
Development tools:(空欄) (特定の開発ツールは選択せずに進める)
Continuous integration: None (CIツールは使用しない)Bash次にプロジェクトのディレクトリに移動します。
cd nuxt3-appBashそして開発サーバーを起動します。npm run dev
D:\mynode>cd nuxt3-app
D:\mynode\nuxt3-app>npm run devBashすると下記のようにサーバーが起動します。
> nuxt3-app@1.0.0 dev
> nuxt
╭───────────────────────────────────────╮
│ │
│ Nuxt @ v2.17.4 │
│ │
│ ▸ Environment: development │
│ ▸ Rendering: server-side │
│ ▸ Target: static │
│ │
│ Listening: http://localhost:3000/ │
│ │
╰───────────────────────────────────────╯
ℹ Preparing project for development 23:15:42
ℹ Initial build may take a while 23:15:42
i Discovered Components: .nuxt/components/readme.md 23:15:42
WARN No pages directory found in D:\mynode\nuxt3-app. Using the default built-in page. 23:15:42
✔ Builder initialized 23:15:42
✔ Nuxt files generated 23:15:43
√ Client
Compiled successfully in 4.86s
√ Server
Compiled successfully in 4.03s
ℹ Waiting for file changes 23:15:49
ℹ Memory usage: 251 MB (RSS: 429 MB) 23:15:49
ℹ Listening on: http://localhost:3000/ Bashhttp://localhost:3000/←のURLにアクセスするとサーバーが起動しているのが分かります。
コマンドの違い
以下に簡単にまとめます。
npx create-nuxt-app <project-name>
- 対象: Nuxt 2
- 概要: Nuxt 2 プロジェクトを初期化するための CLI ツール。
- 特徴:
- 必要最低限のフォルダ構成(例: pages/ や layouts/ など)は生成されないこともある(自分で作成する必要あり)。
- インタラクティブなセットアップで、TypeScript、ESLint、CSS フレームワーク(Tailwind CSS など)の設定が可能。
- Vue 2 を基盤として安定したプロジェクトを構築。
npx nuxi@latest init <project-name>
- 対象: Nuxt 3
- 概要: Nuxt 3 プロジェクトを初期化するための CLI ツール(nuxi)。
- 特徴:
- 最小限の構成でプロジェクトを作成。
- デフォルトで app.vue が生成され、全体のルートコンポーネントとして機能。
- Vue 3 や Vite を活用した最新技術に対応。
- 必要なディレクトリ(pages/, layouts/ など)は手動で作成。
簡単な違い
初期構成はオプションの有無に基づきます。
| 項目 | npx create-nuxt-app | npx nuxi@latest init |
|---|---|---|
| 対象 Nuxt バージョン | Nuxt 2 | Nuxt 3 |
| 初期構成 | 必要最低限の構成(フォルダは手動作成) | 最小限の構成(app.vue が含まれる) |
| 技術基盤 | Vue 2 | Vue 3 + Vite |
| 用途 | 安定した Nuxt 2 プロジェクト構築 | 最新の Nuxt 3 プロジェクト構築 |
どちらを使うべきか?
- Nuxt 2 を使いたい場合
- npx create-nuxt-app を使用。
- Vue 2 ベースのプロジェクトが必要、または既存の Nuxt 2 プロジェクトを引き継ぐ場合。
- Nuxt 3 を使いたい場合
- npx nuxi@late
st initを使用。 - Vue 3 や Vite を活用し、最新の技術スタックでプロジェクトを構築する場合。
- npx nuxi@late
補足
- Nuxt 2 の特徴: フォルダ構成が安定しており、公式プラグインやモジュールが豊富。SSR や SSG に簡単に対応。
- Nuxt 3 の特徴: Vue 3 を基盤にしており、最新技術を活用。Vite による高速なビルドが可能。
Nuxt の信念の一部には、「軽量で柔軟性を持ちながらシンプルさを追求すること」があります。この理念に基づき、Nuxt 3 は複雑さを隠しつつ、軽量で柔軟に利用できる設計が特徴です。そのため、最新の Nuxt 3 を選ぶことが推奨されます。


コメント