go-core

module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 24, 2026 License: Apache-2.0

README

go-core

Core SDK for Standards Lab's Go Minimal standard: layered configuration, process lifecycle, and logging.

github.com/standards-lab/go-core is a single Go module with the process-level packages every program in the standard builds on.

Standard

go-core is the Core SDK of Go Minimal, the minimal-dependency Go standard, and its design is documented on the standard's go-core page. It enhances the standard's dependency line: where Go Minimal admits packages as idiomatic and stable as the standard library, this repository depends on the standard library alone.

Packages

  • config — loads configuration in layers: a base file, an environment overlay, and secrets.
  • lifecycle — starts subsystems concurrently, tracks and reports readiness as subsystem status changes, and shuts down within a timeout.
  • logging — builds an *slog.Logger from a configuration that config loads.

Development

Tasks run through mise:

mise run test

License

Apache License 2.0.

Directories

Path Synopsis
Package config loads layered JSON configuration and defines the contract a configuration type implements to take part in that load.
Package config loads layered JSON configuration and defines the contract a configuration type implements to take part in that load.
Package lifecycle hosts process startup, readiness, and graceful shutdown.
Package lifecycle hosts process startup, readiness, and graceful shutdown.
Package logging constructs the *slog.Logger a process writes through, from a configuration that takes part in the layered load.
Package logging constructs the *slog.Logger a process writes through, from a configuration that takes part in the layered load.
Package process holds the parts of a binary's main sequence that run before the program's own infrastructure exists: reporting a failure or a usage error when there is no logger yet, the signal-derived root context, and the exit-code convention the reporters return.
Package process holds the parts of a binary's main sequence that run before the program's own infrastructure exists: reporting a failure or a usage error when there is no logger yet, the signal-derived root context, and the exit-code convention the reporters return.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL