Cursor Rules - Backend Development
Copyright (c) 2025 Kentaro Kitagawa
MIT License - https://opensource.org/licenses/MIT
[BACKEND] バックエンド開発ガイドライン
技術スタック(優先順位付き)
- Node.js/TypeScript - サーバーサイド開発
- Python/FastAPI - API開発・データ処理
- PostgreSQL - リレーショナルデータベース
- Redis - キャッシュ・セッション管理
- MongoDB - ドキュメント指向データベース
API設計原則
- RESTful: 標準的なHTTPメソッドとステータスコード
- GraphQL: 柔軟なデータ取得(必要に応じて)
- バージョニング: APIバージョン管理戦略
- ドキュメント: OpenAPI/Swaggerによる自動生成
データベース設計
- 正規化: 適切な正規化レベル
- インデックス: クエリパフォーマンス最適化
- マイグレーション: データベーススキーマ管理
- バックアップ: 定期的なバックアップ戦略
セキュリティ実装
- 認証: JWT、OAuth2.0、Session管理
- 認可: RBAC(Role-Based Access Control)
- 入力検証: 厳密なバリデーション
- SQLインジェクション対策: プリペアドステートメント
- XSS対策: 出力エスケープ
- CSRF対策: トークンベース保護
パフォーマンス最適化
- キャッシュ戦略: Redis、メモリキャッシュ
- データベース最適化: クエリ最適化、コネクションプール
- 非同期処理: バックグラウンドジョブ
- CDN: 静的コンテンツ配信
エラーハンドリング
- グローバルエラーハンドラー: 統一的なエラー処理
- ログ管理: 構造化ログ、ログレベル
- 監視: アプリケーション監視、アラート
- ユーザーフレンドリー: 適切なエラーメッセージ
アーキテクチャパターン
- MVC: Model-View-Controller
- Repository: データアクセス抽象化
- Service Layer: ビジネスロジック分離
- Middleware: 共通処理の分離
テスト戦略
- ユニットテスト: Jest、pytest
- 統合テスト: API エンドポイントテスト
- データベーステスト: テストデータ管理
- 負荷テスト: パフォーマンス検証
開発環境・ツール
- Docker: コンテナ化開発環境
- 環境変数: 設定管理
- Hot Reload: 開発効率向上
- デバッグ: 適切なデバッグツール
データ処理・バッチ
- ETL: データ抽出・変換・読み込み
- スケジューラー: 定期実行タスク
- キュー: 非同期処理管理
- ストリーミング: リアルタイムデータ処理
マイクロサービス
- サービス分割: 適切な粒度での分割
- API Gateway: 統一的なエントリーポイント
- サービス間通信: gRPC、メッセージキュー
- サービスディスカバリ: 動的サービス発見
監視・ログ
- APM: アプリケーションパフォーマンス監視
- メトリクス: Prometheus、Grafana
- ログ集約: ELK Stack、Fluentd
- アラート: 異常検知・通知
デプロイメント・CI/CD
- コンテナ化: Docker、Kubernetes
- CI/CD: GitHub Actions、Jenkins
- ブルーグリーン: ゼロダウンタイムデプロイ
- ロールバック: 緊急時の復旧戦略
スケーラビリティ
- 水平スケーリング: ロードバランサー
- 垂直スケーリング: リソース増強
- データベースシャーディング: データ分散
- CDN: 地理的分散
バックアップ・災害復旧
- 自動バックアップ: 定期的なデータ保護
- ポイントインタイム復旧: 特定時点への復旧
- 地理的冗長性: 複数リージョン配置
- 災害復旧計画: 緊急時対応手順
Source: cdbk/cursor-defa · 3★ Repo: Cursor Development Rules Collection