⚡
Vite + TypeScript + React
技術構成
ライブラリ
Name | Version |
---|---|
Vite | 5.0.1 |
TypeScript | 5.3.3 |
React | 18.2.0 |
TailwindCSS | 3.4.1 |
Docker Compose | 2.5.0 |
開発環境
Name | Version |
---|---|
MacBook Air | Apple M1 |
macOS | Sonoma 14.1.1 |
環境構築
プロジェクト作成
npm create vite@latest
を実行
terminal
$ npm create vite@latest
? Project name: プロジェクト名
React
を選択
terminal
? Select a framework: › - Use arrow-keys. Return to submit.
❯ Vanilla
Vue
React
Preact
Lit
Svelte
Solid
Qwik
Others
TypeScript + SW
を選択
terminal
? Select a variant: › - Use arrow-keys. Return to submit.
❯ TypeScript
TypeScript + SWC
JavaScript
JavaScript + SWC
依存パッケージのインストール
terminal
$ npm -i
TailwindCSS
のインストール[1]
terminal
$ npm i -D tailwindcss postcss autoprefixer
$ npx tailwindcss init -p
設定ファイルの編集
Vite
の設定
./vite.config.ts
[2]
vite.config.ts
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react-swc'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
server: {
port: 3000, // 規定ポートを3000番にする
host: true // ローカルホスト以外のすべてのアドレスに接続する(Dockerでの開発用)
}
})
TailwindCSS
の設定
./tailwind.config.js
tailwind.config.js
/** @type {import('tailwindcss').Config} */
export default {
content: [
"./index.html",
"./src/**/*.{js,ts,jsx,tsx}"
],
theme: {
extend: {},
},
plugins: [],
}
TailwindCSS
の読み込み
./src/index.css
index.css
@tailwind base;
@tailwind components;
@tailwind utilities;
Docker
Dockerfile
の作成
./docker/Dockerfile
[3]
Dockerfile
FROM node:16.17.0-bullseye-slim as build
WORKDIR /app
COPY ../ /app/
docker-compose.yml
の作成
./docker/docker-compose.yml
docker-compose.yml
services:
app:
build: .
volumes:
- ../:/app
- node_modules/nodel_modules # node_modulesをボリュームから除く
ports:
- "3000:3000" # viteサーバーのポートにフォワーディング
tty: true
command: >
node -v &&
npm -v &&
npm list
volumes:
node_modules:
dockerignore
の作成
./docker/.dockerignore
**/temp?
**/node_modules
**/docker
**/.gitignore
**/.git
$ docker compose
実行
terminal
$ docker compose -f ./docker/docker-compose.yml -p vite_project build --no-cache
Discussion