Overview
Introduction to Backbase - Axellero's dynamic database and API system
Backbase Overview
Backbase is a dynamic database and API system that automatically generates GraphQL APIs from entity definitions. The system provides schema management, data modeling, and API generation capabilities.
Core Functionality
Backbase generates database backends from entity definitions with:
- Auto-generated GraphQL API with CRUD operations
- Dynamic schema management without database migrations
- Multi-language support for internationalization
- Audit trails for data change tracking
- Workflow integration capabilities
- Entity and field management interface
Key Features
Dynamic Entity Management
Entity definitions include fields, relationships, and constraints. The system:
- Creates database tables and indexes
- Generates GraphQL schema with types, queries, and mutations
- Handles data validation and type conversion
- Manages relationships between entities
Field Types
Supported field types:
TEXT: String fields with search and translation supportINT: Integer numbers with validationAMOUNT: Decimal numbers for currency valuesBOOLEAN: True/false valuesDATE/DATETIME: Date and time fields with timezone supportREFERENCE: Entity relationshipsENUM: Predefined value listsOBJECT: JSON data structuresLOCATION: Geographic coordinate dataID: Unique identifiers
Multi-Language Support
Internationalization features:
- Translatable field configuration
- Language-specific queries and mutations
- Default language fallback
- Translation management
Security Features
Data protection and access control:
- Field-level encryption
- User context and permission integration
- Audit logging with change tracking
- Application isolation and multi-tenancy
Architecture
Core Components
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Studio UI │ │ GraphQL API │ │ Database │
│ │ │ │ │ │
│ Entity Designer │◄──►│ Auto-generated │◄──►│ Dynamic Schema │
│ Field Config │ │ Schema & Ops │ │ Indexes & Data │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Workflows │ │ API Layer │ │ Audit Logs │
│ │ │ │ │ │
│ Business Logic │ │ Query Processing │ │ Change Tracking │
│ Data Validation │ │ Translation │ │ User Context │
└─────────────────┘ └──────────────────┘ └─────────────────┘Data Flow
- Entity Definition: Create entities and fields through management interface
- Schema Generation: System generates GraphQL schema automatically
- API Availability: CRUD operations available through GraphQL
- Workflow Integration: Connect to business logic and external systems
- Audit & Translation: Logging and language support enabled
Configuration Example
1. Define an Entity
{
"code": "product",
"name": "Product",
"description": "Product catalog item",
"isTranslatable": true,
"fields": [
{
"code": "name",
"name": "Product Name",
"fieldType": "TEXT",
"isRequired": true,
"isTranslatable": true
},
{
"code": "price",
"name": "Price",
"fieldType": "AMOUNT",
"isRequired": true
}
]
}2. Use Auto-Generated API
# Create a product
mutation {
bb_createProduct(input: {
name: "Laptop"
price: 999.99
}) {
id
name
price
}
}
# Query products
query {
productList(
filter: { price_gte: 500 }
order: { name: ASC }
) {
id
name
price
}
}3. Add Multi-Language Support
{
"name": "Laptop",
"price": 999.99,
"translations": {
"es": { "name": "Portátil" },
"fr": { "name": "Ordinateur Portable" }
}
}Query products in Spanish:
query {
productList(language: "es") {
name # Returns "Portátil"
price
}
}Use Cases
Suitable For
- Applications with evolving data requirements
- Multi-language content management
- Dynamic configuration management
- Applications requiring audit trails
- Integration projects connecting multiple systems
Recommended For
- Applications needing flexible schema evolution
- Projects requiring internationalization
- Systems with workflow integration needs
- Applications with compliance requirements
Limitations
- High-performance transactional systems
- Applications with complex query requirements
- Systems needing custom database optimizations
- Projects requiring strict schema stability
Reference Documentation
- Field Types Reference - Available field types and configurations
- GraphQL API - Auto-generated API structure
- Entity Management - Schema creation and management
- Workflow Integration - Business logic integration
- Examples - Implementation examples and troubleshooting
System Features
Current implementation includes:
- Performance and scalability improvements
- Multi-language architecture
- Workflow integration capabilities
- Audit logging functionality
- GraphQL API implementation
For migration information, consult the migration documentation.