{"id":23289632,"url":"https://github.com/datadvance/prpc","last_synced_at":"2025-09-22T22:59:31.430Z","repository":{"id":87118839,"uuid":"102737750","full_name":"datadvance/pRpc","owner":"datadvance","description":"Bidirectional websocket RPC with data streaming","archived":false,"fork":false,"pushed_at":"2018-06-27T12:33:13.000Z","size":280,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-21T05:03:03.750Z","etag":null,"topics":["network","remote-execution","rpc"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/datadvance.png","metadata":{"files":{"readme":"README.rst","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,"zenodo":null}},"created_at":"2017-09-07T13:04:13.000Z","updated_at":"2018-06-28T10:46:47.000Z","dependencies_parsed_at":"2023-06-19T18:08:25.556Z","dependency_job_id":null,"html_url":"https://github.com/datadvance/pRpc","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/datadvance/pRpc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datadvance%2FpRpc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datadvance%2FpRpc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datadvance%2FpRpc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datadvance%2FpRpc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/datadvance","download_url":"https://codeload.github.com/datadvance/pRpc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datadvance%2FpRpc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276487480,"owners_count":25651133,"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","status":"online","status_checked_at":"2025-09-22T02:00:08.972Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["network","remote-execution","rpc"],"created_at":"2024-12-20T04:17:12.017Z","updated_at":"2025-09-22T22:59:31.424Z","avatar_url":"https://github.com/datadvance.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"pRpc\n=====\n\npRpc is a yet another python RPC library.\n\nKey features:\n\n* asyncio-based - no predefined threadpools etc.\n  Concurrency is under your control.\n\n* pRpc is symmetric - both peers may publish and call RPC methods\n  regardless of who initially established the connection.\n\n* Streaming support - each call may send and/or recieve a message stream\n  in addition to arguments enabling efficient implementation of RPC calls\n  like 'upload'/'download'.\n\n* Binary serialization using msgpack ensures the low communication overhead.\n\n* Can theoretically work over any message-based transport,\n  but default implementation uses websockets as firewall-friendly solution.\n  Using websockets also brings some nice demultiplexing features as you\n  can publish different methods on different HTTP endpoints.\n\npRpc does not use any interface definition files. Such approach has\nit's disadvantages but is natural for dynamic languages as python.\nOn the positive side, it eliminates a lot of complexity with code generation\ntooling and using the generated code.\n\nReference documentation\n-----------------------\n\n`Hosted on GitHub Pages \u003chttps://datadvance.github.io/pRpc/\u003e`_\n\nContributing\n------------\n\nThis project is developed and maintained by DATADVANCE LLC. Please\nsubmit an issue if you have any questions or want to suggest an\nimprovement.\n\nAcknowledgements\n----------------\n\nThis work is supported by the Russian Foundation for Basic Research\n(project No. 15-29-07043).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatadvance%2Fprpc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatadvance%2Fprpc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatadvance%2Fprpc/lists"}