{"id":23501318,"url":"https://github.com/mrbisquit/wtdawson.eventpipes","last_synced_at":"2026-02-11T23:40:37.542Z","repository":{"id":269342253,"uuid":"907120303","full_name":"MrBisquit/WTDawson.EventPipes","owner":"MrBisquit","description":"An event based C# named pipes library","archived":false,"fork":false,"pushed_at":"2024-12-23T20:54:37.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-04T08:29:46.429Z","etag":null,"topics":["csharp","csharp-library","event-driven","library","pipe"],"latest_commit_sha":null,"homepage":"","language":"C#","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/MrBisquit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2024-12-22T21:32:26.000Z","updated_at":"2025-07-06T16:11:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"54a6e103-17b2-48a5-a82f-e91bd03138c8","html_url":"https://github.com/MrBisquit/WTDawson.EventPipes","commit_stats":null,"previous_names":["mrbisquit/wtdawson.eventpipes"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MrBisquit/WTDawson.EventPipes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrBisquit%2FWTDawson.EventPipes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrBisquit%2FWTDawson.EventPipes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrBisquit%2FWTDawson.EventPipes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrBisquit%2FWTDawson.EventPipes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MrBisquit","download_url":"https://codeload.github.com/MrBisquit/WTDawson.EventPipes/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrBisquit%2FWTDawson.EventPipes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29349634,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T20:11:40.865Z","status":"ssl_error","status_checked_at":"2026-02-11T20:10:41.637Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["csharp","csharp-library","event-driven","library","pipe"],"created_at":"2024-12-25T07:15:33.483Z","updated_at":"2026-02-11T23:40:37.528Z","avatar_url":"https://github.com/MrBisquit.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WTDawson.EventPipes\nI made a blog post about `WTDawson.EventPipes`: [View](https://go.wtdawson.info/dd2060)\n\n`WTDawson.EventPipes` is a C# Class library designed to make a named pipe instance event based to make it easier for interprocess communication using named pipes.\n\n## Getting started\nTo get started, add the NuGet package to your project by either running the command below or if you are using visual studio follow these instructions:\n- Right click your project or solution\n- Find the button called something along the lines of \"Manage NuGet Packages\"\n- Search for \"WTDawson.EventPipes\"\n- Install it\nOr run this command:\n```bash\ndotnet add package WTDawson.EventPipes\n```\n\nOnce `WTDawson.EventPipes` is added to your project or solution, create an instance of `EventPipes`\nand call the `Connect` or `ConnectAsync` function to begin attempting to connect the pipes.\nFor example:\n```cs\nusing WTDawson.EVentPipes;\n\nnamespace Testing {\n\tinternal class Program\n\t{\n\t\tstatic void Main(string[] args)\n\t\t{\n\t\t\tEventPipe eventPipe = new EventPipe(\"TestA\", \"TestB\");\n\t\t\teventPipe.Connect();\n\t\t}\n\t}\n}\n```\nThen, in another project, do the same thing but swap the `primary` and `secondary` pipe names around, for example:\n```cs\nusing WTDawson.EVentPipes;\n\nnamespace Testing {\n\tinternal class Program\n\t{\n\t\tstatic void Main(string[] args)\n\t\t{\n\t\t\tEventPipe eventPipe = new EventPipe(\"TestB\", \"TestA\");\n\t\t\teventPipe.Connect();\n\t\t}\n\t}\n}\n```\nYou can then easily create and send events between the two, for example on both sides you could do:\n```cs\neventPipe.On(\"msg\", (bytes[] data) =\u003e {\n\tConsole.WriteLine(\"Received \" + Encoding.Default.GetString(data));\n\teventPipe.Send(\"msg\", data);\n});\neventPipe.Send(\"msg\", Encoding.Default.GetBytes(\"Hello\"))\n```\nYou can also then listen on system events, for example:\n```cs\neventPipe.Once(\"connected\", () =\u003e {\n\tConsole.WriteLine(\"Pipe connected\");\n});\n\neventPipe.Once(\"disconnected\", () =\u003e {\n\tConsole.WriteLine(\"Pipe disconnected\");\n});\n```\nAvailable system events: `connected`, `disconnected`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrbisquit%2Fwtdawson.eventpipes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrbisquit%2Fwtdawson.eventpipes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrbisquit%2Fwtdawson.eventpipes/lists"}