Skip to content

Commit 547d4a3

Browse files
authored
Merge branch 'main' into dependabot/npm_and_yarn/mcp/express-5.2.1
2 parents d1c8ba5 + b91ea19 commit 547d4a3

File tree

6 files changed

+37
-204
lines changed

6 files changed

+37
-204
lines changed

AGENTS.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Repository Guidelines
2+
3+
## Project Structure & Module Organization
4+
`ui/` は Vite + React 製の SPA で、`src/pages` に画面、`src/components` に再利用 UI、`src/contexts``src/reducers` に状態、`src/lib` にユーティリティ(`supabase/client.ts` など)、`src/test` に Vitest セットアップを配置します。公開アセットは `ui/public`、Tailwind・ESLint・TS 各種設定は `package.json` 直下に置いています。`supabase/` には SQL スキーマやマイグレーション、シード、Edge Functions(`functions/task-management`)をまとめ、`mcp/` では Supabase 関数を `create_task` ツールとして公開する Model Context Protocol ブリッジを提供します。
5+
6+
## Build, Test, and Development Commands
7+
`ui/` 直下で `npm install` を実行したら、`npm run dev`http://localhost:5173 の開発サーバーを起動、`npm run build``tsc`→Vite ビルド、`npm run preview``dist/` を確認できます。`npm run lint``ui/src``mcp/src` に同じ ESLint 設定を適用し、`npm run test``npm run test:ui` で Vitest + Testing Library を実行します。DB/Edge Functions は `supabase start``supabase migration up``supabase migration list``supabase functions deploy` などを `supabase/README.md` の手順に沿って利用してください。
8+
9+
## Coding Style & Naming Conventions
10+
TypeScript + ES Modules を前提にインデントは 2 スペースで統一します。React コードは `vite.config.ts``@` エイリアスを使い (`import Card from "@/components/Card";`)、スタイルは Tailwind ユーティリティを基本とし、共有トークンは `tailwind.config.cjs`、補助 CSS は `src/styles` にまとめます。ESLint + `@typescript-eslint` + React/Hooks/React Refresh 構成で lint-staged がコミット時に Prettier を走らせます。意図的に未使用の変数は `_` プレフィックスで黙認させてください。
11+
12+
## Testing Guidelines
13+
Vitest と Testing Library(jsdom + `@testing-library/jest-dom`)でフック、リデューサー、UI ロジックを検証します。テストファイルは `*.test.ts(x)` を推奨し、グローバル設定が必要なら `src/test/setup.ts` を拡張します。タスク CRUD、ドラッグ & ドロップ順序、認証ガード、インテグレーションキー通知など主要フローを押さえ、大きな変更をマージする前に `npm run test -- --coverage` でカバレッジを確認してください。
14+
15+
## Commit & Pull Request Guidelines
16+
履歴はゆるやかな Conventional Commits (`feat:`, `fix:`, `chore(deps):` など) に従っています。件名は命令形 + 範囲で短くまとめ(例: `feat(tasks): support inline estimate edit`)、PR では目的、実行したテスト、影響する Supabase マイグレーションや MCP 変更、関連 Issue を記述します。UI に影響する場合はタスクカードやトースト、Integration Keys 画面のスクリーンショットを添付するとレビューが早まります。
17+
18+
## Security & Configuration Tips
19+
フロントエンドは `ui/.env.local``VITE_SUPABASE_URL``VITE_SUPABASE_ANON_KEY` が必要です。MCP サーバーは `SUPABASE_FUNCTION_URL``X_INTEGRATION_ID` を設定したうえで `npx ts-node index.ts` もしくは `node dist/index.js` を実行してください。Supabase CLI で本番へアクセスする際は `SUPABASE_DB_PASSWORD` をシェルに読み込み、秘密情報は `.env.local``.envrc` など gitignore 済みのファイルやシークレットマネージャーで管理し、リポジトリに含めないよう徹底します。

CLAUDE.md

Lines changed: 0 additions & 185 deletions
This file was deleted.

CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
AGENTS.md

ui/package-lock.json

Lines changed: 13 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ui/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
"tailwindcss": "^3.4.1",
6565
"typescript": "^5.5.3",
6666
"typescript-eslint": "^8.32.1",
67-
"vite": "^6.3.5",
67+
"vite": "^6.4.1",
6868
"vitest": "^3.1.4"
6969
}
7070
}

ui/src/components/ui/button.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ const buttonVariants = cva(
3535
);
3636

3737
export interface ButtonProps
38-
extends React.ButtonHTMLAttributes<HTMLButtonElement>,
38+
extends
39+
React.ButtonHTMLAttributes<HTMLButtonElement>,
3940
VariantProps<typeof buttonVariants> {
4041
asChild?: boolean;
4142
}

ui/src/components/ui/textarea.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ import * as React from "react";
22

33
import { cn } from "@/lib/utils";
44

5-
export interface TextareaProps
6-
extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {}
5+
export interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {}
76

87
const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(
98
({ className, ...props }, ref) => {

0 commit comments

Comments
 (0)