h4lx
Project / stable

go-app

A small Go application-lifecycle manager with explicit startup, readiness, shutdown, and app-scoped dependencies.

Applications have lifecycle semantics whether or not their framework names them. Resources must start in a deliberate order, become ready before dependents use them, and stop in reverse order when cancellation begins or startup fails halfway through.

go-app is one implementation of that model. It keeps orchestration visible at the call site instead of solving a dependency graph or hiding construction behind reflection.

The current stable release supports sequential and concurrent startup, provider-owned readiness, startup rollback, reverse-order shutdown, runtime cancellation, short-lived commands, and a typed registry used during assembly.