Daptin: создание API на основе схемы данных и управление доступом

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 →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте