TL;DR
TypeScript を中心にした統合的なアプローチを取る BaaS。Firebase や Supabase と同じ分野のサービスである。
なぜ必要か
Convex はアーキテクチャの構成や設計思想、ベストプラクティスまで公式に提供している。ローカルで立ち上げられるので開発しやすい。AI 駆動開発を支える機能も多く、MCP サーバや AI 向けのルールを提供している。AI エージェントを開発する基盤やベクトルストレージもある。
仕組み
convex dev を実行すると、プロジェクトの直下に convex ディレクトリが作られる。ここにスキーマ、クエリ、ミューテーションを書く。convex/schema.ts のスキーマを変えると、convex dev のプロセスが変更を検知して自動でマイグレーションする(Live migration)。
例
Bun でセットアップする場合は次のようにする。
bun add convex
bunx convex devconvex dev を実行すると、アカウントにログインするか、ローカルで実行するかを選ぶ。とりあえず試すなら「Start without an account (run Convex locally)」を選べばよい。
Welcome to Convex! Would you like to login to your account? (Use arrow keys)
❯ Start without an account (run Convex locally)
Login or create an accountローカルで動かすときは --local を付ける。
bunx convex dev --local注意点
convex/_generated ディレクトリも Git の管理対象に含める。
関連
- Supabase
- Firebase
- Model Context Protocol
出典
- Convex
- Understanding Convex
- The Zen of Convex
- Best Practices
- Check generated code into version control
- Local Deployments
- Convex MCP Server
- Convex AI Rules
- AI Agents
- Convex vs. Supabase
- https://zenn.dev/chot/articles/582c381a80d0d1
- https://zenn.dev/ryryo/articles/a345a912206a52
- https://zenn.dev/taroosg/articles/20250609173737-3ea3f2062a8cbd