This release is a pre-release and may not be stable for production use.
apibean-engine
apibean-engine is a schema-driven application framework for building modern, multi-tenant business applications.
It combines dynamic schema management, database abstraction, authentication, authorization, and REST API generation into a single, integrated package, allowing developers to rapidly build metadata-driven applications without assembling multiple frameworks.
The project is designed with a modular architecture. While the current release provides an all-in-one developer experience, major components such as the REST API layer and notebook integration are intended to evolve into standalone packages within the apibean ecosystem.
Features
Schema-Driven Applications
Define application models using JSON Schema instead of handwritten ORM models.
- Dynamic schema definition
- Runtime schema evolution
- Metadata-driven application design
- JSON object storage
Database Abstraction
Access multiple storage technologies through a unified programming model.
Supported and planned backends include:
- PostgreSQL
- MySQL
- Redis
- MinIO
- OpenSearch
- TimescaleDB
The storage layer is designed to be extensible through backend adapters.
Automatic REST APIs
Build RESTful APIs with minimal boilerplate.
Current integration is based on FastAPI, providing:
- CRUD endpoints
- Authentication
- Authorization
- Request validation
- OpenAPI documentation
- Dependency Injection
The REST layer is currently included in apibean-engine for simplicity and is planned to become a dedicated package in the future.
Authentication & Authorization
Built-in security components include:
- User authentication
- Role-Based Access Control (RBAC)
- Permission management
- Resource-level authorization
- Extensible authentication providers
Multi-Tenant Ready
The framework is designed for SaaS and enterprise applications.
Capabilities include:
- Organization management
- Tenant-aware data access
- Configurable isolation strategies
- Tenant-specific schemas and resources
Advanced multi-tenant features will be provided by the future apibean-tenants package.
Extensible Plugin Architecture
Most framework capabilities are implemented through pluggable components.
Examples include:
- Database adapters
- Storage providers
- Search engines
- Time-series backends
- Authentication providers
- API extensions
Architecture
apibean-engine
┌─────────────────────────────────────────────┐
│ │
│ Schema Management │
│ Metadata Runtime │
│ Storage Adapters │
│ Authentication │
│ Authorization │
│ REST API (FastAPI) │
│ Dependency Injection │
│ │
└─────────────────────────────────────────────┘
│
┌──────────┼──────────┐
▼ ▼ ▼
PostgreSQL Redis MinIO
│
▼
OpenSearch
│
▼
TimescaleDB
The internal architecture is modular, enabling individual components to be extracted into dedicated packages as the ecosystem grows.
Design Principles
- Schema-first development
- Metadata-driven applications
- Convention with explicit customization
- Pluggable backend architecture
- Multi-tenant by design
- Framework-independent domain logic
- Production-ready defaults
Installation
pip install apibean-engine
Vision
apibean-engine aims to provide a productive foundation for building metadata-driven applications. By combining schema management, storage abstraction, authentication, and REST APIs into a cohesive framework, it enables developers to focus on business logic rather than infrastructure.
The long-term vision is to grow into a modular ecosystem where individual capabilities can be adopted independently while maintaining a consistent developer experience.
License
MIT License
Release files for apibean-engine 0.1.0a6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| apibean_engine-0.1.0a6.tar.gz | 106.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| apibean_engine-0.1.0a6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 298.1 kB
Release files / apibean_engine-0.1.0a6.tar.gz
| Download URL | apibean_engine-0.1.0a6.tar.gz |
|---|---|
| Size | 106.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2f8ec76186ca739e6b5e46c96cc65fb1688a50a6dbfcaa727a96b2ac50f673e1
|
|
BLAKE2b-256 checksum How to use checksums |
4245b9b9af3e306304dac572814fd11eb1a9a51e4d941a694dfc611fdba1aefe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.5
|
Release files / apibean_engine-0.1.0a6-py3-none-any.whl
| Download URL | apibean_engine-0.1.0a6-py3-none-any.whl |
|---|---|
| Size | 192.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
80a364fcd31173425d8894d47e6a16f08b53fc1a611fd6a08366b0b05b6d8f0f
|
|
BLAKE2b-256 checksum How to use checksums |
3ae8cc448503da28ccf9c08436ba07be223092c48a14c4c7dc03e879cad12ebc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.5
|