An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

github.com/tedsuo/ifrit

A process model for go. Ifrit is a small set of interfaces for composing single-purpose units of work into larger programs. Users divide their program into single purpose units of work, each of which implements the `Runner` interface Each `Runner` can be invoked to create a `Process` which can be monitored and signaled to stop. The name Ifrit comes from a type of daemon in arabic folklore. It's a play on the unix term 'daemon' to indicate a process that is managed by the init system. Ifrit ships with a standard library which contains packages for common processes - http servers, integration test helpers - alongside packages which model process supervision and orchestration. These packages can be combined to form complex servers which start and shutdown cleanly. The advantage of small, single-responsibility processes is that they are simple, and thus can be made reliable. Ifrit's interfaces are designed to be free of race conditions and edge cases, allowing larger orcestrated process to also be made reliable. The overall effect is less code and more reliability as your system grows with grace.

Ecosystem
proxy.golang.org
Latest Release
v0.0.0-20230516164442-7862c310ad26
almost 3 years ago
Versions
5
Dependent Packages
280
Dependent Repos
1,672
Links
Registry proxy.golang.org
Source Repository
Docs Documentation
JSON API View JSON
CodeMeta codemeta.json
Package Details
PURL pkg:golang/github.com/tedsuo/ifrit
spec
License MIT
Namespace github.com/tedsuo
First Release over 7 years ago
Last Synced 11 days ago
Repository
Stars 47 on GitHub
Forks 17 on GitHub
Docker Dependents 65
Docker Downloads 228,206,087
Rankings on proxy.golang.org
Overall Top 2.4%
Dependent packages Top 0.3%
Dependent repos Top 0.2%
Forks Top 5.3%
Docker downloads Top 0.2%