{"id":13511334,"url":"https://github.com/CympleTech/chamomile","last_synced_at":"2025-03-30T20:32:58.909Z","repository":{"id":43065623,"uuid":"193683112","full_name":"CympleTech/chamomile","owner":"CympleTech","description":"Lightweight p2p library. Support build robust connection on decentralized network.","archived":false,"fork":false,"pushed_at":"2024-03-19T00:23:07.000Z","size":403,"stargazers_count":110,"open_issues_count":10,"forks_count":18,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-08-06T07:06:46.820Z","etag":null,"topics":["dht","distributed","network","p2p","rust"],"latest_commit_sha":null,"homepage":"","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/CympleTech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","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-25T10:04:01.000Z","updated_at":"2024-07-10T08:22:53.000Z","dependencies_parsed_at":"2023-02-13T06:45:57.745Z","dependency_job_id":"a6a6de7a-0a66-42e7-b8ca-bb61d51aec4a","html_url":"https://github.com/CympleTech/chamomile","commit_stats":{"total_commits":200,"total_committers":3,"mean_commits":66.66666666666667,"dds":"0.040000000000000036","last_synced_commit":"246c3cb73b3c709196ba7f28a5749f878256bde6"},"previous_names":["placefortea/chamomile"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CympleTech%2Fchamomile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CympleTech%2Fchamomile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CympleTech%2Fchamomile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CympleTech%2Fchamomile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CympleTech","download_url":"https://codeload.github.com/CympleTech/chamomile/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246266244,"owners_count":20749754,"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":["dht","distributed","network","p2p","rust"],"created_at":"2024-08-01T03:00:47.595Z","updated_at":"2025-03-30T20:32:58.890Z","avatar_url":"https://github.com/CympleTech.png","language":"Rust","funding_links":[],"categories":["P2P Network Libraries"],"sub_categories":[],"readme":"[![crate](https://img.shields.io/badge/crates.io-v0.11.1-green.svg)](https://crates.io/crates/chamomile) [![doc](https://img.shields.io/badge/docs.rs-v0.11.1-blue.svg)](https://docs.rs/chamomile)\n\n# Chamomile\n*Build a robust stable connection on p2p network*\n\n## features\n- Support build a robust stable connection between two peers on the p2p network.\n- Support permissionless network.\n- Support permissioned network (distributed network).\n- DHT-based \u0026 Relay connection.\n- Diff transports: QUIC(*default*) / TCP / UDP-Based Special Protocol.\n- Multiple transports connecting at same runtime.\n\n## Simple test.\n- A: `cargo run --example permissionless 127.0.0.1:8000`\n- B: `cargo run --example permissionless 127.0.0.1:8001 127.0.0.1:8000`\n- C: `cargo run --example permissionless 127.0.0.1:8002 127.0.0.1:8000`\n\nIf not support `127.0.0.1` binding, you can change to `0.0.0.0` and try again.\n\n## Relay test.\n- A: `cargo run --example relay 192.168.xx.xx:8000`\n  - this ip is your LAN address, it will do relay work.\n- B: `cargo run --example relay 127.0.0.1:8001 192.168.xx.xx:8000`\n  - start waiting stable connected by relay.\n- C: `cargo run --example relay 127.0.0.1:8002 192.168.xx.xx:8000 XX..`\n  - XX.. is above's B network `peer id` will connected it.\n  - And if change B and C `127.0.0.1` to `0.0.0.0`, they will automatically connect after the handshake is successful, no longer need relay.\n\n## Design point\n- Mobile phones, IoT devices, PC and servers are first-class citizens\n- Ability to adapt to the transmission and penetration of complex network environments\n- Support for springboard function, virtual connection with other nodes, build virtual DHT\n- Encrypted transmission and secure DHT protection\n- It can support all interconnections and single-center connections under the LAN, and can also support DHT in the public network environment\n- Automatically switch the connection according to the number of connections and the network environment\n- If Alice use QUIC, Bob use TCP, they can still connect and communicate with each other.\n\n## For more information, please visit:\n- Website: https://cympletech.com\n- Twitter: https://twitter.com/cympletech\n- Discord: https://discord.gg/UfFjp6Kaj4\n- E-mail: dev@cympletech.com\n\n## License\n\nThis project is licensed under either of\n\n * Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or\n   http://www.apache.org/licenses/LICENSE-2.0)\n * MIT license ([LICENSE-MIT](LICENSE-MIT) or\n   http://opensource.org/licenses/MIT)\n * Anti-War license ([LICENSE-AW](LICENSE-AW) or\n   https://github.com/sunhuachuang/AW-License)\n\nat your option.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCympleTech%2Fchamomile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCympleTech%2Fchamomile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCympleTech%2Fchamomile/lists"}