Skip to main content
Pre-release

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

Future Ecosystem

As the project evolves, the framework will be organized into dedicated packages:

  • apibean-engine — Core runtime and application framework
  • apibean-rest — REST API integration
  • apibean-client — Python API client
  • apibean-tenants — Advanced multi-tenant management
  • apibean-jupyter — Jupyter Server integration
  • apibean-notebook — Interactive notebook utilities
  • apibean-base — Shared utilities and common abstractions

Applications built today on apibean-engine will remain compatible as these components are gradually separated.

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.0a3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for apibean-engine 0.1.0a3
File Size Uploaded
apibean_engine-0.1.0a3.tar.gz 95.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for apibean-engine 0.1.0a3
File Interpreter ABI Platform
apibean_engine-0.1.0a3-py3-none-any.whl Python 3 none any Details

Total release size: 270.9 kB

Release files / apibean_engine-0.1.0a3.tar.gz

Download URL apibean_engine-0.1.0a3.tar.gz
Size 95.7 kB
Tags Source
SHA-256 checksum
How to use checksums
48e425e011e62da451b3c36ff2f6b0e450841c0775555c8c69e5ee5f10b15074
BLAKE2b-256 checksum
How to use checksums
f6a718c4c11110ab3480acec2fd81921e4c4e14e6006e7fbb2241fd835bb51b1
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.0a3-py3-none-any.whl

Download URL apibean_engine-0.1.0a3-py3-none-any.whl
Size 175.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
547e1ee8329786dbb4d78a1dfd45914eb398b1168081c068fe3c4bd2a83ed594
BLAKE2b-256 checksum
How to use checksums
55554f9633d1cf6c701634eb8db5a49910125e1ff41a9acc204b9a509c8988c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.5
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page