Eliminate boilerplate integrations and vendor lock-in. Route databases, AI models, file storage, auth, events, and configs dynamically based on tenant context.
A zero-plumbing backend pattern designed to let you swap infrastructure vendors in real-time without redeploying subscriber code.
Dynamic proxy routing that transparently maps unified requests to SQL databases, NoSQL databases, or custom key-value stores dynamically using incoming metadata headers.
Version-controlled prompt templates compiled on-the-fly with secure, environment-sourced LLM credentials. Supports instant model swaps without subscriber code revisions.
Automated high-throughput telemetry ingestion and transactional event outbox logging leveraging optimal database-level time-sequential UUIDs.
Configurations and feature flags are dynamically merged and resolved in real-time, allowing instant overrides without code churn.
Toggle the value of a feature flag (e.g. enableCalculator) across different resolution layers to see how Metasembly merges and resolves the final config block.
{
"enableCalculator": true,
"resolvedFrom": "Platform Defaults"
}
Subscribers talk to unified entrypoints. Metasembly handles the plumbing securely behind the scenes.
import { MetasemblyClient } from 'metasembly-sdk/client';
const client = new MetasemblyClient({
baseUrl: 'https://services.metasembly.com',
cookiePrefix: 'edlaps'
});
// Perform scoped client-side CRUD proxy
const questions = await client.data.find('Question', {
difficulty: 'Medium',
limit: 5
});
import { MetasemblyServer } from 'metasembly-sdk/server';
const server = new MetasemblyServer({
apiKey: process.env.METASEMBLY_API_KEY,
baseUrl: 'https://services.metasembly.com'
});
// Secure background telemetry ingestion
await server.logs.write('INFO', 'AI Question generated successfully', {
userId: 'usr-87234',
latencyMs: 1420
});
{
"tableName": "ai_usage",
"keyField": "id",
"enableEvents": true,
"idStrategy": {
"type": "sequential",
"seedFields": ["userId", "timestamp"],
"timestampField": "createdAt",
"contentHashField": "contentHash"
}
}