scratch repo for intrusive networking
1# `ergot` 2 3**Ergot is a messaging library that can run on a variety of differently sized devices, from large desktop/server PCs down to very small single core microcontrollers.** 4 5Ergot allows developers to enjoy a coherent network of devices, regardless of the size of devices, or transport mediums used to connect them. 6 7It includes **type-safe sockets**, **addressing**, and **routing**. In minimal MCU-sized configurations, it requires no allocator, and is `no_std` friendly. In larger PC-sized configurations, allocations may be used for performance and convenience. 8 9Ergot has grown out of the lessons of the `postcard` and `postcard-rpc` projects, and aims to (eventually) supercede `postcard-rpc` in functionality, with further inspiration from [AppleTalk](https://en.wikipedia.org/wiki/AppleTalk), an OSI-model protocol stack used on Mac computers in the late 80s and early 90s. 10 11Ergot is still very early in development. Bugs are expected. Help is welcome. 12 13## Community 14 15- [Join us on Matrix](https://matrix.to/#/#mnemos-dev:beeper.com) 16- [6 Streams a week on YouTube](https://www.youtube.com/@JamesOfficeHours/streams), 17 Monday, Wednesday, Friday 18 - Start of day at 10:30 CEST 19 - End of day at 20:00 CEST 20 21## Name 22 23The name "ergot" (pronounced "ur-get", or more specifically /ˈɜːrɡət/, UR-gət) comes from the [Ergot fungus](https://en.wikipedia.org/wiki/Ergot), a parasitic fungus that grows on grains such as rye, produces Lysergic Acid, the precursor of LSD. 24 25This name was chosen in line with the naming theme of the [mycelium](https://github.com/hawkw/mycelium/) project. 26 27## License 28 29Licensed under either of 30 31- Apache License, Version 2.0 ([LICENSE-APACHE](./crates/ergot/LICENSE-APACHE) or 32 <http://www.apache.org/licenses/LICENSE-2.0>) 33- MIT license ([LICENSE-MIT](./crates/ergot/LICENSE-MIT) or <http://opensource.org/licenses/MIT>) 34 35at your option. 36 37### Contribution 38 39Unless you explicitly state otherwise, any contribution intentionally submitted 40for inclusion in the work by you, as defined in the Apache-2.0 license, shall be 41dual licensed as above, without any additional terms or conditions.