PostgreSQL、MongoDB、SQL Serverなどのデータベースを、きめ細かなアクセス制御を備えた安全なGraphQL APIとしてすぐに公開できるオープンソースエンジン。
PostgREST/postgrest
バックエンドコードを書かずに、既存のPostgreSQLデータベースをRESTful APIに変換するスタンドアロンサーバー。
- スター
- 27,726
- フォーク
- 1,234
- 未解決の Issue
- 410
- 最終コミット
- 17 時間前
これは何?
PostgRESTは、既存のPostgreSQLデータベースから完全なRESTful APIを提供します。データベース内のテーブル、ビュー、関数がHTTP経由で公開されるため、基本的なCRUDやクエリのために独自のAPIレイヤーを書く必要がありません。
処理の大部分はデータベースに委ねられます。レスポンスはSQL内でJSONにシリアライズされ、認可にはデータベースで定義されたPostgreSQLのロールが使われ、データ検証はデータベースの制約に基づいて行われます。認証にはJSON Web Tokensを使用し、サーバーは各リクエストを認証済みのデータベースユーザーとして実行します。APIのバージョン管理にはデータベーススキーマを使い、OpenAPIドキュメントは自動生成されます。
サーバーはHaskellで実装され、コネクションプールを使用します。また、ステートレスなので水平スケールが可能です。複数のプラットフォーム向けバイナリとDockerイメージが提供されています。
主な機能
- 01PostgreSQLデータベース内のテーブル、ビュー、関数からREST APIを自動生成します。
- 02認可をデータベースのロールに、認証をJWTに委ねます。
- 03APIのOpenAPIドキュメントを生成します。
- 04データベーススキーマを使ったAPIのバージョン管理に対応します。
- 05HTTPのRangeヘッダーを使って、行数とページ分割された結果を返します。
- 06データベースのコネクションプールを備えたステートレスサーバーとして動作します。
ユースケース
- 既存のPostgreSQLスキーマを使って、手早くCRUDバックエンドを構築する。
- 基盤となるテーブルを変更しながら、データベースビューを通じて安定した公開APIを提供する。
- サーバー側のエンドポイントを書かずに、フロントエンドアプリ向けのデータAPIを提供する。
クイックスタート
- 1
お使いのプラットフォーム向けのインストール手順を読むか、Dockerを使用してください
- 2
helpコマンドで利用可能なオプションを確認してください
postgrest --help
使う前に知っておきたいこと
- 既存のPostgreSQLデータベースが必要です。データベースは提供されません。
- 認可はデータベースのロールとスキーマ設計に依存するため、セキュリティはPostgreSQLで設定する必要があります。
トピック
よくある質問
- postgrest とは?
- バックエンドコードを書かずに、既存のPostgreSQLデータベースをRESTful APIに変換するスタンドアロンサーバー。 PostgRESTは、既存のPostgreSQLデータベースから完全なRESTful APIを提供します。データベース内のテーブル、ビュー、関数がHTTP経由で公開されるため、基本的なCRUDやクエリのために独自のAPIレイヤーを書く必要がありません。
- postgrest は無料で使えますか?ライセンスは?
- postgrest は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- postgrest は今もメンテナンスされていますか?
- 活発にメンテナンス中。postgrest の最終コミットは 2026年10月20日 です。
- postgrest は何に使えますか?
- 既存のPostgreSQLスキーマを使って、手早くCRUDバックエンドを構築する。 基盤となるテーブルを変更しながら、データベースビューを通じて安定した公開APIを提供する。 サーバー側のエンドポイントを書かずに、フロントエンドアプリ向けのデータAPIを提供する。
- postgrest のインストール方法は?
- お使いのプラットフォーム向けのインストール手順を読むか、Dockerを使用してください helpコマンドで利用可能なオプションを確認してください: postgrest --help
- postgrest はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/PostgREST/postgrest
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Postgresを中心とした開発プラットフォーム。Firebaseの代替として、ホステッドPostgresデータベースに認証、自動生成API、ストレージ、リアルタイム機能を備えています。
Airtableに代わるセルフホスト可能なオープンソース製品。SQLデータベースを表計算風のUIと自動生成APIに変換します。
OpenAPI仕様から多くの言語・フレームワーク向けのAPIクライアントSDK、サーバースタブ、ドキュメントを生成
FastAPIバックエンド、Reactフロントエンド、PostgreSQL、Docker Composeを組み合わせたフルスタックWebアプリのテンプレート。
シリアライズ、認証ポリシー、viewset、Browsable APIを備えた、Django上でWeb APIを構築するためのツールキット。