{"id":16019806,"url":"https://github.com/zduny/mezzenger","last_synced_at":"2025-08-03T23:41:11.489Z","repository":{"id":63037532,"uuid":"557192208","full_name":"zduny/mezzenger","owner":"zduny","description":"Message passing infrastructure for Rust.","archived":false,"fork":false,"pushed_at":"2023-09-19T20:59:19.000Z","size":191,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-21T01:26:01.953Z","etag":null,"topics":["message","message-passing","message-passing-interface","websockets","webworker"],"latest_commit_sha":null,"homepage":"https://docs.rs/mezzenger/","language":"Rust","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/zduny.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"ko_fi":"zduny"}},"created_at":"2022-10-25T08:38:46.000Z","updated_at":"2024-01-12T18:43:11.000Z","dependencies_parsed_at":"2024-10-08T17:05:30.086Z","dependency_job_id":"19e982da-c283-4ec0-b271-1c8c403f56ac","html_url":"https://github.com/zduny/mezzenger","commit_stats":{"total_commits":153,"total_committers":1,"mean_commits":153.0,"dds":0.0,"last_synced_commit":"c8495268eb2768566a9717a7af8e7ffa5370c453"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zduny/mezzenger","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zduny%2Fmezzenger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zduny%2Fmezzenger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zduny%2Fmezzenger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zduny%2Fmezzenger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zduny","download_url":"https://codeload.github.com/zduny/mezzenger/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zduny%2Fmezzenger/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268629733,"owners_count":24281172,"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-08-03T02:00:12.545Z","response_time":2577,"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":["message","message-passing","message-passing-interface","websockets","webworker"],"created_at":"2024-10-08T17:05:26.284Z","updated_at":"2025-08-03T23:41:11.006Z","avatar_url":"https://github.com/zduny.png","language":"Rust","funding_links":["https://ko-fi.com/zduny","https://ko-fi.com/O5O31JYZ4"],"categories":[],"sub_categories":[],"readme":"# mezzenger\n\n[![Test Status](https://github.com/zduny/mezzenger/actions/workflows/rust.yml/badge.svg)](https://github.com/zduny/mezzenger/actions)\n\nMessage passing infrastructure for Rust.\n\nhttps://crates.io/crates/mezzenger\n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/O5O31JYZ4)\n\n## transport implementations\n\n| Create                                                                                                       |    Native    |    Browser    | Description                                                                                                            |\n|:-------------------------------------------------------------------------------------------------------------|:------------:|:-------------:|:-----------------------------------------------------------------------------------------------------------------------|\n| [mezzenger-tcp](https://github.com/zduny/mezzenger/tree/master/mezzenger-tcp)                                | ✅           | *n/a*        | Transport over [Tokio](https://tokio.rs/) TCP implementation.                                                          |\n| [mezzenger-udp](https://github.com/zduny/mezzenger/tree/master/mezzenger-udp)                                | ✅           | *n/a*        | Transport over [Tokio](https://tokio.rs/) UDP implementation.                                                          |\n| [mezzenger-dtls](https://github.com/zduny/mezzenger/tree/master/mezzenger-dtls)                              | *wip*        | *n/a*        | Transport over DTLS implementation.                                                                                  |\n| [mezzenger-webworker](https://github.com/zduny/mezzenger/tree/master/mezzenger-webworker)                    | *n/a*        | ✅             | Communication with [Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers).  |\n| [mezzenger-websocket](https://github.com/zduny/mezzenger/tree/master/mezzenger-websocket)                    | ✅           | ✅             | Transport over [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API).                          |\n| [mezzenger-channel](https://github.com/zduny/mezzenger/tree/master/mezzenger-channel)  | ✅      | ✅        | Transport over [futures](https://github.com/rust-lang/futures-rs) channels. |\n\n\n## description\n\nThe goal of `mezzenger` project is to create and maintain a set of crates that make it easy to pass messages\nover the network and network-like interfaces.\n\nOther **goals**:\n - maintaining similar interface across transport implementations,\n - providing (where applicable) implementations that work both on native and browser WASM targets,\n - development of various utilities that make it easy to layer/compose transports of different types and/or properties (see [mezzenger-utils](https://github.com/zduny/mezzenger/tree/master/mezzenger-utils)).\n\n**Non**-goals:\n - encryption - if required it should be handled by the underlying transport,\n - Node.js WASM targets - contributions are welcome, but they won't be developed/maintained by the [author](https://github.com/zduny) of this project,\n - best possible performance - implementations are supposed to be decent, without obvious areas for improvement, but if you need to save every bit of bandwidth you'd likely be better served by a custom application-specific protocol.  \n\n## example\n\nSee [rust-webapp-template](https://github.com/zduny/rust-webapp-template).\n\n## see also\n\n[mezzenger-utils](https://github.com/zduny/mezzenger/tree/master/mezzenger-utils) - utilities for `mezzenger`.\n\n[zzrpc](https://github.com/zduny/zzrpc) - remote procedure call over `mezzenger` transports.\n\n[kodec](https://github.com/zduny/kodec)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzduny%2Fmezzenger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzduny%2Fmezzenger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzduny%2Fmezzenger/lists"}