Skip to content

Commit

Permalink
chore: npmからpnpmへ移行
Browse files Browse the repository at this point in the history
  • Loading branch information
shun-shobon committed Oct 29, 2024
1 parent ef14c3c commit 036ed6b
Show file tree
Hide file tree
Showing 6 changed files with 9,703 additions and 16,453 deletions.
30 changes: 21 additions & 9 deletions .github/workflows/check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,23 @@ jobs:
- name: Setup | Checkout
uses: actions/checkout@v4

- name: Setup | Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
run_install: false

- name: Setup | Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: npm
cache: pnpm

- name: Setup | Install Dependencies
run: npm ci
run: pnpm install --frozen-lockfile

- name: Run | Lint
run: npm run lint
run: pnpm run lint

check-schema:
runs-on: ubuntu-latest
Expand All @@ -39,25 +45,31 @@ jobs:
- name: Setup | Checkout
uses: actions/checkout@v4

- name: Setup | Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
run_install: false

- name: Setup | Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: npm
cache: pnpm

- name: Setup | Install Dependencies
run: npm ci
run: pnpm install --frozen-lockfile

- name: Setup | Start Supabase
run: npx supabase db start
run: pnpm supabase db start

- name: Setup | Generate Type
run: npm run gen:type
run: pnpm run gen:type

- name: Setup | Generate Seed
run: |
npx @snaplet/seed init
npm run gen:seed
pnpm @snaplet/seed init
pnpm run gen:seed
- name: Run | Check Diff
run: |
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/deploy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,19 +15,25 @@ jobs:
- name: Setup | Checkout
uses: actions/checkout@v4

- name: Setup | Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
run_install: false

- name: Setup | Node.js
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: npm
cache: pnpm

- name: Setup | Install Dependencies
run: npm ci
run: pnpm install --frozen-lockfile

- name: Run | Migrate
run: |
npx supabase link --project-ref ${SUPABASE_PROJECT_ID}
npx supabase db push
pnpm supabase link --project-ref ${SUPABASE_PROJECT_ID}
pnpm supabase db push
env:
SUPABASE_PROJECT_ID: ${{ secrets.SUPABASE_PROJECT_ID }}
SUPABASE_DB_PASSWORD: ${{ secrets.SUPABASE_DB_PASSWORD }}
Expand Down
36 changes: 21 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,22 @@ Mac や WSL では [mise](https://mise.jdx.dev/getting-started.html) 等を経

## セットアップ

このプロジェクトをクローンしたら、以下のコマンドを実行してください
このプロジェクトをクローンしたら、まずは pnpm を使えるようにするために以下のコマンドを実行してください

```sh
npm install
corepack enable
```

次に、依存関係をインストールします。このコマンドは依存関係が更新された際にも必要なため、pull した後などにも実行が必要な場合があります。

```sh
pnpm install
```

次に、Supabase の設定を行います。ローカルの Supabase を使う場合は、以下のコマンドを実行して Supabase を起動してください。(要 Docker)

```sh
npx supabase start
pnpm supabase start
```

しばらくすると、Supabase の各種パラメータが表示されるため、`API URL``anon key``.env`ファイルに設定してください。また、 http://127.0.0.1:54323 で Supabase のダッシュボードにアクセスできます。
Expand All @@ -39,7 +45,7 @@ npx supabase start
開発サーバーを起動するには以下のコマンドを実行してください。

```sh
npm run dev
pnpm run dev
```

ブラウザから `http://localhost:5173` でアクセスできます。ファイルの変更を検知して自動でリロードされます。
Expand All @@ -49,55 +55,55 @@ npm run dev
Biome を用いてコードのチェックを行います。VSCode で Biome 拡張をインストールしておくと、エディタ上でエラーを確認できます。

```sh
npm run lint
pnpm run lint
```

### フォーマット

Biome を用いてコードのフォーマットを行います。

```sh
npm run fmt
pnpm run fmt
```

### ビルド

以下のコマンドでプロジェクトをビルドできます。基本的にデプロイ時に自動で行われるので、手動でビルドする必要はありません。

```sh
npm run build
pnpm run build
```

### Supabase

Supabase のテーブルを編集する場合はローカルの Supabase が必要となります。セットアップの手順に従ってローカルの Supabase を起動してください。

```sh
npx supabase start
pnpm supabase start
```

参考: https://supabase.com/docs/guides/local-development/overview

#### Supabase を止める

```sh
npx supabase stop
pnpm supabase stop
```

#### データをリセットする

マイグレーションからやり直されるため、認証情報も含めてテーブル内のすべてのデータが消去されます。

```sh
npx supabase db reset
pnpm supabase db reset
```

#### 新しくテーブルを作る・テーブルを編集する

テーブルを編集したい場合はマイグレーションファイルを使用します。以下のコマンドで新しいマイグレーションファイルを作成できます。

```sh
npx supabase migration new <マイグレーション名>
pnpm supabase migration new <マイグレーション名>
```

実行すると、`supabase/migrations` ディレクトリに新しいマイグレーションファイルが作成されます。このファイルを編集して、テーブルの変更を記述してください。
Expand All @@ -107,7 +113,7 @@ npx supabase migration new <マイグレーション名>
なお、テーブルに変更を加えた場合は TypeScript の型を再生成する必要があります。

```sh
npx supabase gen types --lang=typescript --local > app/libs/database.ts
pnpm supabase gen types --lang=typescript --local > app/libs/database.ts
```

忘れずにコミットしてください。
Expand All @@ -119,14 +125,14 @@ npx supabase gen types --lang=typescript --local > app/libs/database.ts
```sh
# ログインする
# 一回だけでOK
npx supabase login
pnpm supabase login

# プロジェクトをリンクする
# 一回だけでOK
# project-id は Supabase のダッシュボードから取得してください
npx supabase link --project-ref <project-id>
pnpm supabase link --project-ref <project-id>

npx supabase db push
pnpm supabase db push
```

> [!CAUTION]
Expand Down
Loading

0 comments on commit 036ed6b

Please sign in to comment.