Движок с открытым исходным кодом, который мгновенно превращает PostgreSQL, MongoDB, SQL Server и другие базы данных в безопасный GraphQL API с детальным контролем доступа.
PostgREST/postgrest
Самостоятельный сервер, который превращает любую существующую базу данных PostgreSQL в RESTful API без написания кода бэкенда.
- Звёзды
- 27,726
- Форки
- 1,234
- Открытые issues
- 410
- Последний коммит
- 21 час назад
Что это?
PostgREST предоставляет полностью RESTful API для существующей базы данных PostgreSQL. Таблицы, представления и функции базы доступны по HTTP, поэтому для простых операций CRUD и запросов разработчикам не нужно писать собственный API-слой.
Большую часть работы выполняет база данных. Ответы сериализуются в JSON средствами SQL, авторизация опирается на роли PostgreSQL, заданные в базе, а проверка данных — на её ограничения. Аутентификация выполняется с помощью JSON Web Tokens, и сервер обрабатывает каждый запрос от имени прошедшего аутентификацию пользователя базы данных. Версии API задаются с помощью схем базы данных, а документация OpenAPI генерируется автоматически.
Сервер написан на Haskell, использует пул соединений и не хранит состояние, поэтому его можно масштабировать горизонтально. Он доступен в виде бинарных файлов для нескольких платформ и Docker-образа.
Ключевые возможности
- 01Автоматически создаёт REST API на основе таблиц, представлений и функций базы данных PostgreSQL.
- 02Передаёт авторизацию ролям базы данных, а аутентификацию выполняет с помощью JWT.
- 03Автоматически создаёт документацию OpenAPI для API.
- 04Поддерживает версионирование API с помощью схем базы данных.
- 05Передаёт количество строк и результаты с пагинацией через HTTP-заголовки Range.
- 06Работает как сервер без состояния и использует пул соединений с базой данных.
Сценарии использования
- Быстро создать CRUD-бэкенд поверх существующей схемы PostgreSQL.
- Предоставить стабильный публичный API через представления базы данных, даже если лежащие в основе таблицы меняются.
- Предоставить приложению на фронтенде API для доступа к данным без написания серверных эндпоинтов.
Быстрый старт
- 1
Ознакомьтесь с инструкцией по установке для вашей платформы (или используйте Docker)
- 2
Проверьте доступные параметры с помощью команды help
postgrest --help
Что важно знать
- Требуется существующая база данных PostgreSQL; проект не предоставляет её.
- Авторизация зависит от ролей базы данных и структуры схемы, поэтому безопасность необходимо настроить в PostgreSQL.
Темы
Частые вопросы
- Что такое postgrest?
- Самостоятельный сервер, который превращает любую существующую базу данных PostgreSQL в RESTful API без написания кода бэкенда. PostgREST предоставляет полностью RESTful API для существующей базы данных PostgreSQL. Таблицы, представления и функции базы доступны по HTTP, поэтому для простых операций CRUD и запросов разработчикам не нужно писать собственный API-слой.
- postgrest можно использовать бесплатно? Какая у него лицензия?
- postgrest распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- postgrest всё ещё поддерживается?
- Активно поддерживается. Последний коммит в postgrest — 20 окт. 2026 г..
- Для чего можно использовать postgrest?
- Быстро создать CRUD-бэкенд поверх существующей схемы PostgreSQL. Предоставить стабильный публичный API через представления базы данных, даже если лежащие в основе таблицы меняются. Предоставить приложению на фронтенде API для доступа к данным без написания серверных эндпоинтов.
- Как установить postgrest?
- Ознакомьтесь с инструкцией по установке для вашей платформы (или используйте Docker) Проверьте доступные параметры с помощью команды help: postgrest --help
- Где скачать postgrest?
- Исходный код и инструкции по установке — на GitHub: https://github.com/PostgREST/postgrest
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Платформа разработки на базе Postgres: управляемая база данных с аутентификацией, автоматически генерируемыми API, хранилищем и функциями realtime — альтернатива Firebase.
Самостоятельно размещаемая open-source альтернатива Airtable: превращает SQL-базы данных, например PostgreSQL, MySQL и SQLite, в интерфейс в виде таблицы и автоматически генерирует API.
Генерирует SDK клиентов API, серверные заготовки и документацию на десятках языков и для разных фреймворков по спецификациям OpenAPI 2.0 и 3.0.
Набор инструментов для создания Web API на базе Django: сериализация, политики аутентификации, viewsets и интерактивный API.
Открытый Node.js-бэкенд с REST и GraphQL API, аутентификацией пользователей, файловым хранилищем и push-уведомлениями на MongoDB или PostgreSQL.