ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
Node.js のインストール
JavaScript のサーバサイド実行環境。npm も同梱されます。LTS (Long-Term Support, 偶数バージョン) を選ぶのが原則。
方法1: 公式インストーラ (シンプル)
nodejs.org から OS 別インストーラをダウンロードしてインストール。確認:
node --version # v20.10.0 など
npm --version # 10.2.3 など
方法2: バージョン管理ツール(推奨)
プロジェクトごとに異なる Node バージョンを使い分けるなら、バージョン管理ツールが必須。
# === nvm (macOS / Linux) ===
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 20
nvm install 18
nvm use 20
nvm alias default 20
# === Volta (macOS / Linux / Windows) ===
curl https://get.volta.sh | bash
volta install node@20
volta install yarn
# package.json の "volta" フィールドで自動切替
# === fnm (Fast Node Manager, macOS / Linux / Windows) ===
curl -fsSL https://fnm.vercel.app/install | bash
fnm install 20
fnm use 20
# === Windows: nvm-windows ===
# https://github.com/coreybutler/nvm-windows/releases
nvm install 20.10.0
nvm use 20.10.0
パッケージマネージャの選択
| ツール | 特徴 | 速度 |
|---|---|---|
| npm | Node.js 同梱、最も広く使われる | △ |
| yarn (Classic v1) | Facebook 発、npm と互換 | ○ |
| yarn (Berry v3+) | PnP モード、ゼロインストール | ◎ |
| pnpm | ★ 推奨。シンボリックリンクで省ディスク + 高速 | ◎ |
| bun | ★ Bun ランタイム同梱、超高速 (実験的) | ◎◎ |
# pnpm インストール
npm install -g pnpm
# または corepack で
corepack enable
corepack prepare pnpm@latest --activate
# 基本コマンド対応
npm install ↔ pnpm install ↔ yarn install
npm add foo ↔ pnpm add foo ↔ yarn add foo
npm run dev ↔ pnpm dev ↔ yarn dev
エディタ: VS Code 推奨セットアップ
VS Code をインストール後、以下の拡張機能を導入:
| 拡張機能 | 役割 |
|---|---|
| ESLint | 静的解析 (dbaeumer.vscode-eslint) |
| Prettier | コードフォーマッタ (esbenp.prettier-vscode) |
| EditorConfig | プロジェクト共通のエディタ設定 |
| GitLens | Git ブレーム表示 |
| Vue Language Features (Volar) | Vue 3 サポート |
| ES7+ React/Redux Snippets | React スニペット |
| Tailwind CSS IntelliSense | Tailwind 補完 |
| Path Intellisense | ファイルパス補完 |
.vscode/settings.json 推奨設定
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.organizeImports": "explicit"
},
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true,
"[javascript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[vue]": { "editor.defaultFormatter": "Vue.volar" }
}
TypeScript 環境
# TypeScript プロジェクト初期化
mkdir my-app && cd my-app
npm init -y
npm install --save-dev typescript @types/node
npx tsc --init # tsconfig.json 生成
# 実行
npx ts-node src/index.ts # 旧来
npx tsx src/index.ts # ★ 推奨(高速、ESM 対応)
# 監視モード
npx tsc --watch
tsconfig.json 推奨
{
"compilerOptions": {
"target": "ES2022",
"module": "ESNext",
"moduleResolution": "Bundler",
"lib": ["ES2022", "DOM", "DOM.Iterable"],
"strict": true,
"noUncheckedIndexedAccess": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx",
"paths": {
"@/*": ["./src/*"]
}
},
"include": ["src"]
}
ビルドツール: Vite
Evan You (Vue 作者) 製。ESM ベースの開発サーバ + Rollup ベースのビルドで webpack より大幅高速。
# 新規プロジェクト作成
npm create vite@latest my-app
# テンプレート選択: vanilla / vue / react / svelte / preact / lit / solid + TS 版
cd my-app
npm install
npm run dev # http://localhost:5173
# ビルド
npm run build # dist/ に出力
npm run preview # ビルド結果をプレビュー
その他ビルドツール
| ツール | 特徴 | 用途 |
|---|---|---|
| Vite | ★ 推奨、超高速 HMR | SPA / SSR |
| webpack | 枯れている、設定豊富 | レガシー / 複雑な設定 |
| esbuild | Go 製、超高速バンドラ | 低レベル組込 |
| Rollup | ライブラリ向け Tree-shaking | npm パッケージ |
| Parcel | 設定不要 | 小規模プロト |
| Turbopack | Next.js 向け (Vercel 製) | Next.js プロジェクト |
ESLint + Prettier
# ESLint v9 (Flat Config)
npm install --save-dev eslint @eslint/js typescript-eslint
npx eslint --init # 対話で設定生成
# Prettier
npm install --save-dev prettier
echo "{}" > .prettierrc.json # 空でデフォルト
echo "node_modules" > .prettierignore
eslint.config.js (Flat Config v9+)
import js from '@eslint/js';
import tseslint from 'typescript-eslint';
export default tseslint.config(
js.configs.recommended,
...tseslint.configs.recommended,
{
rules: {
'no-console': 'warn',
'@typescript-eslint/no-unused-vars': 'error',
},
},
{ ignores: ['dist/**', 'node_modules/**'] }
);
Biome: ESLint + Prettier の代替
# Biome (Rust 製、超高速)
npm install --save-dev --save-exact @biomejs/biome
npx biome init
npx biome check src/ # lint + format 両対応
npx biome check --apply src/ # 自動修正
テスト環境
| ツール | 特徴 |
|---|---|
| Vitest | ★ 推奨。Vite 統合、Jest 互換 API、超高速 |
| Jest | 枯れている、React 標準 |
| Playwright | E2E (Chromium / Firefox / WebKit) |
| Cypress | E2E (主に Chromium) |
| Testing Library | ユーザ視点の React / Vue テスト |
# Vitest 導入
npm install --save-dev vitest
# package.json
{
"scripts": {
"test": "vitest",
"test:ui": "vitest --ui",
"coverage": "vitest --coverage"
}
}
デバッガ
- Chrome DevTools:
F12→ Sources でブレークポイント設定 - VS Code デバッガ:
.vscode/launch.jsonで Node / Chrome デバッグ統合 - Node Inspector:
node --inspect-brk index.js→ chrome://inspect で接続 - console.log デバッグ: 簡易だが効果的。
console.table/console.groupも活用
現代の推奨スタック (2026)
| 項目 | 推奨 |
|---|---|
| Node | v20 / v22 LTS |
| パッケージマネージャ | pnpm |
| 言語 | TypeScript (strict: true) |
| ビルドツール | Vite |
| lint / format | Biome (ESLint + Prettier 統合) もしくは ESLint v9 + Prettier |
| テスト | Vitest + Playwright |
| フレームワーク | React / Vue 3 / Svelte 5 / Solid(用途による) |
| メタフレームワーク | Next.js / Nuxt 3 / SvelteKit / Remix |
FAQ
Q: npm と yarn と pnpm、どれを使うべき?
A: 新規プロジェクトは pnpm 推奨(速度・省ディスク)。既存プロジェクトは選んだものを使い続ける(ロックファイルが違うため)。
Q: TypeScript は必須?
A: 小規模スクリプトは不要、5 ファイル以上のプロジェクトなら導入推奨。型補完で開発効率と保守性が大きく向上します。
Q: ESLint v9 (Flat Config) でつまずく
A: 旧 .eslintrc 形式は v9 で非推奨。eslint.config.js に移行。プラグインも flat config 対応版(@typescript-eslint/eslint-plugin → typescript-eslint)に変更が必要。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- SEO タイトル設計とキーワード配置完全ガイド (CTR / LLMO 対応) 2026-06-10 18:13:56
- Vue.js v-bind 完全ガイド (属性 / クラス / スタイル / Composition API) 2026-06-10 18:13:56
- Twitter (X) プラットフォーム完全ガイド 2026 (API / Premium / 競合) 2026-06-10 18:13:56
- PHP 変数スコープ完全ガイド (global / static / use / Arrow Function) 2026-06-10 18:13:56
- jQuery .height() 完全ガイド (innerHeight / outerHeight / box-sizing) 2026-06-10 18:13:56
- WordPress 主要独自関数完全ガイド (Loop / Enqueue / Hook / Conditional Tag) 2026-06-10 18:13:56
- jQuery 要素・値の削除完全ガイド (remove / detach / empty / val) 2026-06-10 18:13:56
- PHP コメント完全ガイド (// / # / /* */ / PHPDoc) 2026-06-10 18:13:56
- PHP 改行出力 (\n / PHP_EOL / nl2br) 完全ガイド 2026-06-10 18:13:56
- JavaScript 確認ダイアログ完全ガイド (confirm / alert / prompt / dialog) 2026-06-10 18:13:56
- UE5 スクリーンショット保存 (Scene Capture) 完全ガイド 2026-06-10 18:12:53
- UE5 Nav Mesh Bounds Volume 完全ガイド 2026-06-10 18:12:53
- EJS テンプレートの共通化 (include) 完全ガイド 2026-06-10 18:12:53
- UE5 カメラ傾き角度制限完全ガイド (Pitch Min/Max) 2026-06-10 18:12:53
- SQLite 完全ガイド (組み込み RDBMS) 2026-06-10 18:12:53
コメントを削除してもよろしいでしょうか?