@ambiten/adapter-lambda
v1.0.0
Published
<div style="display: flex; align-items: center;"> <p > <img src="https://raw.githubusercontent.com/AmbitenHQ/ambiten/main/assets/ambiten-mark-192x192.png" width="56" alt="Ambiten" /> </p> <h2> @ambiten/adapter-lambda</h2> </div>
Readme
Overview
@ambiten/adapter-lambda connects AWS Lambda functions to the Ambiten runtime.
The adapter establishes an execution boundary for each Lambda invocation so runtime context remains available throughout the lifecycle of the function. Tenant information, request metadata, logging, instrumentation, transactions, and runtime services can then participate consistently across handlers, services, and model operations.
The adapter does not replace Lambda. It allows serverless execution to participate fully in the Ambiten runtime model.
Installation
npm install @ambiten/core @ambiten/adapter-lambdaQuick Start
import {
AmbitenBootstrapFactory
} from "@ambiten/core";
import {
createLambdaAdapter
} from "@ambiten/adapter-lambda";
const adapter = createLambdaAdapter();
const bootstrap =
await AmbitenBootstrapFactory.create({
adapter
});
export const handler =
adapter.wrap(async (event, context) => {
return {
statusCode: 200,
body: JSON.stringify({
success: true
})
};
});Each invocation automatically participates in the Ambiten execution model.
What the Adapter Provides
The adapter acts as the bridge between AWS Lambda and the runtime.
It can establish invocation-scoped context, initialize tenant boundaries, propagate request metadata, participate in transaction-aware execution flows, and expose runtime state to downstream services and models.
This allows function handlers to remain focused on business logic while execution concerns remain coordinated by the runtime.
Runtime Flow
Lambda Invocation
↓
Lambda Adapter
↓
AmbitenContext
↓
Services
↓
Models
↓
MongoDBThe adapter creates the execution boundary. The runtime then carries execution state throughout the remainder of the invocation lifecycle.
Invocation Context
Serverless applications frequently require request information to remain available across asynchronous execution paths.
The adapter can automatically expose invocation metadata through the runtime context so services and models can access request-scoped information without manually passing it between layers.
Lambda Event
↓
Runtime Context
↓
Service Layer
↓
Model OperationsExecution context remains attached throughout the entire invocation.
Multi-Tenancy
When multi-tenancy is enabled, tenant information can be resolved from the incoming event and made available throughout the active runtime context.
Lambda Event
↓
Tenant Resolution
↓
AmbitenContext
↓
Tenant-Aware ExecutionThis allows models and services to operate against the correct tenant boundary without manually propagating tenant identifiers through the application.
Serverless Execution
Unlike traditional servers, Lambda functions execute inside short-lived invocation boundaries.
The adapter is designed around this model and ensures runtime state is isolated per invocation while still allowing logging, instrumentation, transactions, and context propagation to behave consistently.
This makes it possible to share the same runtime model across serverless functions, APIs, workers, and long-running services.
Observability
Logs, instrumentation events, and runtime metadata generated during an invocation remain correlated through the active runtime context.
This helps preserve operational visibility across distributed systems where requests may pass through multiple serverless functions before completing.
Documentation
Complete documentation is available at:
https://ambiten.dev
Related Packages
@ambiten/core@ambiten/logger@ambiten/create
License
MIT
