DEV Community

Kvant swatg
Kvant swatg

Posted on Originally published at github.com

Portable Production Architecture in Jeston: Adapters, Jobs, and Health Signals

Portability is not achieved by listing many deployment targets. It comes from keeping application behavior behind small, testable contracts. Jeston applies this idea to the production concerns that usually create the most coupling: data, cache, jobs, storage, metrics, and deployment.

Small contracts, replaceable providers

Jeston exposes provider-neutral interfaces for database, cache, queue, storage, metrics, frontend, AI, and deployment integrations. The core does not bundle vendor SDKs. Providers can publish adapters independently, while applications keep their domain code focused on behavior rather than a single infrastructure vendor.

The integration registry makes lifecycle information explicit. An integration can declare an ID, semantic version, category, supported runtime, setup and teardown hooks, and peer-dependency boundaries. A catalog entry is discoverability metadata; it is not automatically an official implementation.

Development and production can use different adapters

The repository recommends lightweight development adapters and durable production infrastructure:

Area Development Production
Database SQLite or a test adapter PostgreSQL, managed SQL, Prisma, Drizzle, or another reviewed adapter
Cache Process-local memory Redis or another distributed cache
Jobs Local fake Durable queue with retries and dead-letter handling
Files Temporary local storage S3-compatible or managed object storage
Observability Structured console logs Metrics/tracing exporter and centralized logs

The point is not that one provider is always correct. The point is that the application can make the transition explicit and test the contract at the boundary.

Durable jobs need durable semantics

Jeston's JobQueue contract includes delay, idempotency keys, tags, retry metadata, and bounded shutdown hooks. These features address common failure modes in long-running work: duplicate delivery, retry storms, unbounded shutdown, and jobs that cannot be inspected operationally.

For AI agents, inference, evaluation, or training workflows, the framework does not claim to make work durable automatically. Applications must persist checkpoints and outputs, propagate cancellation, define data governance, and specify failure recovery.

Health and readiness are operational signals

Applications can supply a health registry that exposes JSON /health and /ready endpoints. A non-ok report returns 503, and reports can include status, latency, tags, and an ISO timestamp. This gives deployment systems and operators a concrete signal instead of relying only on process liveness.

Deployment remains portable

Jeston provides deployment adapters for Node, Docker, Cloudflare, Vercel, Netlify, and Cloud Run. The framework keeps deployment lifecycle concerns explicit while avoiding a requirement for proprietary hosting.

Portability therefore becomes an engineering property: small contracts, explicit failure semantics, health signals, and adapters that can be reviewed independently.

See the architecture, adapter, and operational material in github.com/kvantjs/jeston.

Top comments (0)