Daptin is a server exposing HTTP APIs for web and application developers providing to talk to database and persistent storage.
-
Consistent API with authentication and authorization for database table and metadata
-
User management and user group management API with row and table level ownership
-
Stateless and easily scalable
-
Dadadash : https://github.com/daptin/dadadash/
docker run -p 8080:8080 daptin/dadadash
Download • Documentation • Community
The most powerful ready to use data and services API server.
- Define data tables and relations from config files or API calls
- Middleware for handling data normalizations and conformations
- Create indexes, constraints on columns
- Column can be have images/video/audio/blobs attachments, stored appropriately in #cloudstore
- Authentication and Authorization on APIs, define auth using APIs
- Add users and user groups
- RWX based permission system for rows and tables
- JWT token with configurable expiry time
- User sign in/sign up/password reset flows
- JSON API and GraphQL API
- JSONAPI.org complaint endpoints
- GraphQL endpoint with Data/Query and Mutations available
- Pagination and filtering using page number or cursor based
- Fetch relationships in a single call
- Cloud storage, create storage using API
- Connect to over 30 storage providers (localhost/HTTP/FTP/GDrive/Dropbox/S3 and many more)
- Manage files using daptin actions
- Automated 1 hour sync scheduled
- Static and HUGO sites
- Host site on multiple domains
- Inbuilt HTTPS certificate generation with lets-encrypt
- Web file browser and FTP access (disabled by default)
- Action workflows & 3rd party API integration, create new integration using API calls
- Supports v2/v3 openapi in yaml or json format
- Call any 3rd party API by importing OpenAPI Spec
- Email server
- Enable SMTPS and IMAPS services and use daptin as your daily email provider
- Multi hostname mail server
- Multiple email accounts, database backed email storage
- Database backed persistence, 3NF normalized tables
- JSON API/GraphQL for CRUD apis
- User and group management and access control
- Social login with OAuth: tested with google, github, linkedin
- Actions for abstracting out business flows
- Extensive state tracking APIs
- Enable Data Auditing from a single toggle
- Synchronous Data Exchange with 3rd party APIs
- Multilingual tables support, supports Accept-Language header
- Market place API to manage and share schemas
- Cloud storage sync like gdrive, dropbox, b2, s3 and more
- Asset column to hold file and blob data, backed by storage
- Multiple websites under separate sub-domain/sub-paths
- Connect with external APIs by using extension points
- Data View Streams
- Flexible data import (auto create new tables and automated schema generation)
- XLSX
- JSON
- CSV
https://github.com/daptin/daptin-js-client
Starter kit: https://github.com/daptin/vue_typescript_starter_kit
Define Schema
- Versioning of the data
- Authentication and authorization
- JSON API endpoint
- GraphQL endpoint
- Actions and integrations with external services
- CRUD APIs
- Action APIs
- User APIs
- State tracking APIs
Ruby | Python | Javascript |
Typescript | PHP | Dart |
.NET | Java | iOS |
Elixir | R | Perl |
OpenAPI V3 spec is auto generated for each endpoint exposed. This can be use to generate further documentation and clients.
curl http://localhost/apispec.yaml
- Normalised Db Design from JSON schema upload
- Json Api, with CRUD and Relationships
- OAuth Authentication, inbuilt jwt token generator (setups up secret itself)
- Authorization based on a slightly modified linux FS permission model
- Objects and action chains
- State tracking using state machine
- Data connectors -> Incoming/Outgoing data
- Plugin system -> Grow the system according to your needs
- Native support for different data types (geo location/time/colors/measurements)
- Configurable intelligent Validation for data in the APIs
- Pages/Sub-sites -> Create a sub-site for a target audience
- Define events all around the system
- Data conversion/exchange/transformations
- Live editor for subsites - grapesjs
- Store connectors for storing big files/subsites - rclone
- Market place to allow plugins/extensions to be installed
- Online entity designer
- Excel to entity identification
- CSV to entity identification