{"id":21500282,"url":"https://github.com/xyndra/gateway","last_synced_at":"2026-03-19T20:38:31.071Z","repository":{"id":256982458,"uuid":"855931907","full_name":"Xyndra/Gateway","owner":"Xyndra","description":"A connection-independent \"wrapper\" protocol","archived":false,"fork":false,"pushed_at":"2024-09-13T16:19:57.000Z","size":9,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-19T08:05:12.529Z","etag":null,"topics":["decentralization","networking","protocol","servers"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Xyndra.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-09-11T17:36:12.000Z","updated_at":"2024-09-13T16:50:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"331dab52-29f1-47db-b8a2-e9501a5739a2","html_url":"https://github.com/Xyndra/Gateway","commit_stats":null,"previous_names":["xyndra/gateway"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Xyndra/Gateway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xyndra%2FGateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xyndra%2FGateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xyndra%2FGateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xyndra%2FGateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xyndra","download_url":"https://codeload.github.com/Xyndra/Gateway/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xyndra%2FGateway/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29151630,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T02:39:25.012Z","status":"ssl_error","status_checked_at":"2026-02-06T02:37:22.784Z","response_time":59,"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":["decentralization","networking","protocol","servers"],"created_at":"2024-11-23T17:34:12.566Z","updated_at":"2026-02-06T05:04:09.202Z","avatar_url":"https://github.com/Xyndra.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"= The Gateway Protocol\n\nifndef::env-github[]\ninclude::common/Purpose.adoc[]\nendif::[]\nifdef::env-github[]\n== Purpose\nThe purpose of the Gateway Protocol is to provide a connection-independent\nway to communicate with \"Gateways\", which are similar to routers.\n\nThis is nice for the following scenarios:\n\n. You have a closed network and want to provide a way to communicate with it\nfrom the outside. You can create a publicly accessible Gateway and then set\nup very dynamic firewall rules.\n. You want to protect your network from (D)DoS attacks. Since this is designed\nwith \"Gateway dies first\" in mind, you can simply make the Gateway limited\nin resources and have it stop or throttle connections if it gets too much.\n. Apocalyptic scenario: the internet, which is centralized, gets\nblocked/censored. This protocol can be applied with radio or light signals.\n. Push towards decentralization: currently, there is no way for \"normies\"\nto actually host any content, so they will always be dependent on big\nplatforms. The goal of this protocol is to stop this and make apps able to\ncommunicate with other clients semi-independently\n(You can't remove ISPs and centralized IP lists)\nendif::[]\n\n== Current status\n\nThis protocol is currently in xref:v0.1/Gateway.adoc[v0.1]. It is not recommended for production use, and there is still\nsome features that need to be implemented. Sample features include:\n\n* Continuous connection streams\n* Error correction\n* Push towards own network implementation instead of being on top of TCP or UDP\n\n'''\n\n#If you like the idea of this protocol, please consider contributing to it. You don't have to be a genius\nto write a few changes to the text, and if you don't/can't do that you can also create an issue or discussion. Writing\nyour own implementation or making your apps compatible with it will also help a lot to get this into the mainstream.#","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxyndra%2Fgateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxyndra%2Fgateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxyndra%2Fgateway/lists"}