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.0a5
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.0a5.tar.gz | 100.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| apibean_engine-0.1.0a5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 283.5 kB
Release files / apibean_engine-0.1.0a5.tar.gz
| Download URL | apibean_engine-0.1.0a5.tar.gz |
|---|---|
| Size | 100.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d4c686d4cfe34ecfd22232a4ca96f9d303d15f8481cffb7ba1ce7da7175e43e2
|
|
BLAKE2b-256 checksum How to use checksums |
b52a69fe0b68e3c2240cc81d7593ddb11575bef09e0b5197c370a5c7e23bbe56
|
| 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.0a5-py3-none-any.whl
| Download URL | apibean_engine-0.1.0a5-py3-none-any.whl |
|---|---|
| Size | 183.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1dcee477512d04f2856f6443e44d49a6dfc4b90ceac4fdafb49b0dd377412667
|
|
BLAKE2b-256 checksum How to use checksums |
7d1e663993251afdb0e40468b7eff143a060f4956e49180ad63af201a7f2cad6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.5
|