Agent Skills by ALSEL
Anthropic Claudeソフトウェア開発⭐ リポ 0品質スコア 50/100

flask-api-development

ルーティング、Blueprint、データベース連携、認証、リクエスト/レスポンス処理を含む軽量なFlask APIを開発します。RESTful API、マイクロサービス、またはFlaskを使った軽量Webサービスを構築する際に使用してください。

description の原文を見る

> Develop lightweight Flask APIs with routing, blueprints, database integration, authentication, and request/response handling. Use when building RESTful APIs, microservices, or lightweight web services with Flask.

SKILL.md 本文

Flask API 開発

目次

概要

ブループリントによるモジュール化、SQLAlchemy による ORM、JWT 認証、包括的なエラーハンドリング、適切なリクエスト検証を備えた効率的な Flask API を作成します。REST の原則に従います。

使用場面

  • Flask を使用した RESTful API の構築
  • オーバーヘッドが最小限のマイクロサービスの作成
  • 軽量な認証システムの実装
  • 適切な検証を備えた API エンドポイントの設計
  • リレーショナルデータベースとの統合
  • リクエスト/レスポンスハンドリングシステムの構築

クイックスタート

最小限の動作例:

# app.py
from flask import Flask, request, jsonify
from flask_cors import CORS
from flask_sqlalchemy import SQLAlchemy
from flask_jwt_extended import JWTManager
import os

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = os.getenv('DATABASE_URL', 'sqlite:///app.db')
app.config['JWT_SECRET_KEY'] = os.getenv('JWT_SECRET_KEY', 'dev-secret')
app.config['JSON_SORT_KEYS'] = False

db = SQLAlchemy(app)
jwt = JWTManager(app)
CORS(app)

# Request ID ミドルウェア
@app.before_request
def assign_request_id():
    import uuid
    request.request_id = str(uuid.uuid4())

# エラーハンドラ
@app.errorhandler(400)
def bad_request(error):
// ... (詳細な実装はリファレンスガイドを参照)

リファレンスガイド

references/ ディレクトリに詳細な実装があります:

ガイド内容
Flask Application SetupFlask アプリケーションセットアップ
Database Models with SQLAlchemySQLAlchemy によるデータベースモデル
Authentication and JWT認証と JWT
Blueprints for Modular API Designモジュール化 API 設計のためのブループリント
Request Validationリクエスト検証
Application Factory and Configurationアプリケーションファクトリと設定

ベストプラクティス

✅ DO

  • モジュール化組織のためにブループリントを使用する
  • JWT による適切な認証を実装する
  • すべてのユーザー入力を検証する
  • データベース操作に SQLAlchemy ORM を使用する
  • 包括的なエラーハンドリングを実装する
  • コレクションエンドポイントにペジネーションを使用する
  • エラーと重要なイベントをログに記録する
  • 適切な HTTP ステータスコードを返す
  • CORS を適切に実装する
  • 設定に環境変数を使用する

❌ DON'T

  • シークレットをコード内に保存しない
  • グローバル変数を共有状態に使用しない
  • データベーストランザクションを無視しない
  • 検証なしでユーザー入力を信頼しない
  • 本番環境でスタックトレースを返さない
  • ミュータブルなデフォルト引数を使用しない
  • データベース接続エラーのハンドリングを忘れない
  • ルートハンドラで認証を実装しない

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
aj-geddes
リポジトリ
aj-geddes/useful-ai-prompts
ライセンス
MIT
最終更新
不明

Source: https://github.com/aj-geddes/useful-ai-prompts / ライセンス: MIT

関連スキル

汎用ソフトウェア開発⭐ リポ 39,967

doubt-driven-development

重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 1,175

apprun-skills

TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。

by yysun
OpenAIソフトウェア開発⭐ リポ 797

desloppify

コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。

by Git-on-my-level
汎用ソフトウェア開発⭐ リポ 39,967

debugging-and-error-recovery

テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

test-driven-development

テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

incremental-implementation

変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。

by addyosmani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: aj-geddes · aj-geddes/useful-ai-prompts · ライセンス: MIT