{"id":19566197,"url":"https://github.com/rtradeltd/go-libp2p-pubsub-grpc","last_synced_at":"2025-04-27T01:31:22.942Z","repository":{"id":102899743,"uuid":"191266885","full_name":"RTradeLtd/go-libp2p-pubsub-grpc","owner":"RTradeLtd","description":" 🗣️ libp2p pubsub with controls exposed via a gRPC API","archived":false,"fork":false,"pushed_at":"2019-07-05T20:54:17.000Z","size":194,"stargazers_count":14,"open_issues_count":0,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-04T19:23:13.033Z","etag":null,"topics":["client","grpc","grpc-go","ipfs","libp2p","libp2p-pubsub","pubsub","server"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RTradeLtd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-11T00:50:54.000Z","updated_at":"2024-08-02T15:40:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"822d1cd6-5fd0-42a1-ae42-7650f01cacb0","html_url":"https://github.com/RTradeLtd/go-libp2p-pubsub-grpc","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RTradeLtd%2Fgo-libp2p-pubsub-grpc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RTradeLtd%2Fgo-libp2p-pubsub-grpc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RTradeLtd%2Fgo-libp2p-pubsub-grpc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RTradeLtd%2Fgo-libp2p-pubsub-grpc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RTradeLtd","download_url":"https://codeload.github.com/RTradeLtd/go-libp2p-pubsub-grpc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251076910,"owners_count":21532596,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["client","grpc","grpc-go","ipfs","libp2p","libp2p-pubsub","pubsub","server"],"created_at":"2024-11-11T05:30:00.479Z","updated_at":"2025-04-27T01:31:17.930Z","avatar_url":"https://github.com/RTradeLtd.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# go-libp2p-pubsub-grpc (pubsubgrpc)\n\n[![GoDoc](https://godoc.org/github.com/RTradeLtd/go-libp2p-pubsub-grpc?status.svg)](https://godoc.org/github.com/RTradeLtd/go-libp2p-pubsub-grpc) [![codecov](https://codecov.io/gh/RTradeLtd/go-libp2p-pubsub-grpc/branch/master/graph/badge.svg)](https://codecov.io/gh/RTradeLtd/go-libp2p-pubsub-grpc) [![Build Status](https://travis-ci.com/RTradeLtd/go-libp2p-pubsub-grpc.svg?branch=master)](https://travis-ci.com/RTradeLtd/go-libp2p-pubsub-grpc)\n\n\n`pubsubgrpc` provides a LibP2P PubSub framework that can be used as a stand-alone gRPC pubsub server and API, or as a module/component of existing gRPC servers to provide LibP2P PubSub functionality. It uses `proto3` and borrows some ideas from [libp2p/go-libp2p-daemon](https://github.com/libp2p/go-libp2p-daemon/blob/master/pb/p2pd.proto) and [libp2p/go-libp2p-pubsub](https://github.com/libp2p/go-libp2p-pubsub/tree/master/pb).\n\n# usage\n\nThere are two ways of using this library:\n\n1) One is to construct a standalone pubsub server with a gRPC api (see `server.go`)\n2) Provide pubsub functionality to already existing gRPC servers (see `pubsubgrpc.go`)\n\nIf using the standalone pubsub server, there is a golang client in `client.go` that can be used.\n\n# todo:\n\n* once go-libp2p-pubsub has discovery, use it.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frtradeltd%2Fgo-libp2p-pubsub-grpc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frtradeltd%2Fgo-libp2p-pubsub-grpc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frtradeltd%2Fgo-libp2p-pubsub-grpc/lists"}