Daptin: создание API на основе схемы данных и управление доступом
Daptin — это самостоятелный сервер приложений для создания API на основе схемы данных, управления идентификацией, файлами, автоматизацией и интеграциями.
Проект позволяет один раз определить ресурсы, после чего он сам генерирует необходимые API и управляет доступом, автоматизацией и хранением данных. Это может быть полезным для разработчиков, которые ищут решение для быстрой разработки и управления API без необходимости настраивать все с нуля. Daptin выделяется своей способностью к многократному использованию одной схемы для разных целей и лёгкостью интеграции с существующими системами.
Сервер написан на Go и запускается через простую настройку схемы данных. Учти, что проект находится на ранней стадии разработки, так что может отсутствовать какая-то функциональность или стабильность. Кроме того, лицензия LGPL v3 сулит определённые ограничения на использование в коммерческих целях.
Проект Daptin — это сервер приложений, который можно развернуть на собственных серверах и который работает на основе данных, которые ты определяешь один раз. Daptin автоматически генерирует API, управляет идентификацией пользователей, разрешениями, файлами, автоматизацией и интеграциями.
Основные возможности
Daptin позволяет загружать схемы данных, которые становятся ресурсами в формате JSON:API и могут быть доступны через разные протоколы. Каждая таблица в БД настраивается для поддержки доступа на уровне строк и действий. Проект включает следующие возможности:
- Схема данных: Определяет записи, поля, связи и правила валидации.
- API: Автоматически генерируются CRUD операции и системы управления данными.
- Идентификация и разрешения: Поддержка пользователей, групп и проверки доступа.
- Файлы и хранилища: Поддержка локального и облачного хранения данных.
- Автоматизация: Позволяет планировать задачи и отслеживать состояние через действия и машины состояния.
Daptin также поддерживает интеграцию с внешними сервисами и может выполнять функции в режиме реального времени.
Как установить и запустить
Daptin можно запустить несколькими способами:
Docker
docker run --pull=always --rm -p 127.0.0.1:6336:8080 daptin/daptin:latest
Для более долговременного локального развертывания с PostgreSQL:
cp .env.example .env
docker compose up --wait
После запуска открой http://localhost:6336 для создания первого администратора.
Linux binary
curl -L -o daptin https://github.com/daptin/daptin/releases/latest/download/daptin-linux-amd64
chmod +x daptin
./daptin -port=6336
Ограничения
Daptin имеет некоторые ограничения, о которых стоит знать:
- Поддержка маршрутов CalDAV/CardDAV не включает в себя функции, такие как делегирование или управление свойствами.
- Отсутствуют механизмы защиты для отслеживания состояний: если переход состояния должен выполнять какую-либо работу, это нужно сделать отдельно с помощью действия.
- Не все функции могут поддерживаться в зависимости от конфигурации и используемых протоколов.
Этот проект подходит для разработчиков, которым необходим мощный и гибкий бэкенд для своих приложений с акцентом на обработку данных и безопасный доступ.
Открыть на GitHub: daptin/daptin →
RepoRadar