From Zero to Production
This page is a practical implementation path to build and ship a PURISTA application.
Phase 1: Foundation
- Create project and run quickstart flow.
- Create first service plus at least one command, subscription, stream, and—if you need pull-based async work—a queue + worker pair.
- Add schema validation for payload/parameter/output.
- Add unit tests for service/command/subscription/stream.
Reference:
Phase 2: Integration-ready logic
- Add stores (config/secret/state) where required.
- Define resources (DB clients, external SDK wrappers).
- Expose required commands/streams through REST endpoints (JSON + SSE).
- Add invoke relations (
canInvoke) explicitly.
Reference:
Phase 3: Runtime architecture
- Choose event bridge based on delivery requirements.
- Choose queue bridge (default in-memory vs Redis or other providers) for pull-based workloads.
- Choose deployment model (monolith, microservice style, edge, serverless).
- Configure graceful shutdown and startup ordering.
Reference:
Phase 4: Production readiness
- Enable tracing and metrics with OpenTelemetry.
- Add endpoint protection/auth middleware.
- Validate error handling, timeout behavior, and stream cancellation behavior.
- Run integration tests against real broker/store setup (including delivery semantics).
Reference:
Release checklist
- schemas are explicit and stable
- no accidental
any/unknownin core paths - tests cover happy path, failure path, and cancellation/retry paths
- streaming and event-bridge docs match implemented behavior
- runtime config is documented
- observability and shutdown behavior verified
