moonbitstack/moonzero/consul does not have a README file
pub suberror ConsulError {
ConsulError(String)
}fn ConsulClient::health_service(self : ConsulClient, name : String) -> Array[Endpoint] raise ConsulErrorfn ConsulClient::register_service(self : ConsulClient, id : String, name : String, address : String, port : Int, ttl_secs : Int) -> Unit raise ConsulErrorfn ConsulDiscovery::deregister_instance(self : ConsulDiscovery, service : String, endpoint : Endpoint) -> Unit raisefn ConsulDiscovery::keepalive(self : ConsulDiscovery, service : String, endpoint : Endpoint) -> Unit raisefn ConsulDiscovery::register(self : ConsulDiscovery, service : String, endpoint : Endpoint, ttl? : Int) -> String raisepub struct ConsulResponse {
status : Int
body : Bytes
}fn consul_check_id(service_id : String) -> Stringfn consul_register_body(id : String, name : String, address : String, port : Int, ttl_secs : Int) -> BytesInstall
Download zipmoonzero — a service framework for MoonBit (← go-zero): config-driven assembly of a moonapi application with middleware, producing a runnable moonasgi AsgiApp. v0.6.2 runs real unary, server/client-streaming, and bidirectional zRPC calls over moonrpc's h2c transport (an in-process RpcChannel drives HPACK HEADERS + length-prefixed DATA + grpc-status trailers through the H2Server engine), graceful shutdown draining in-flight calls, a persisted, watchable etcd v3-shaped registry (watch, events_since catch-up, snapshot/restore) with round-robin/pick-first balancers and a load-balanced client, real file-backed registry I/O over moonbitlang/async's fs with a live filesystem watcher (native discov driver), request metrics (counter + latency histogram), and W3C traceparent propagation.