6 releases (3 breaking)

0.4.0 Jan 17, 2025
0.3.0 Dec 12, 2024
0.2.0 Nov 27, 2024
0.1.2 Nov 15, 2024

#101 in Template engine


Used in 2 crates

MIT/Apache

33KB
497 lines

Poststation Utilities

Public libraries and utilities for using poststation. Repo highlights:

crates/

These are crates that are depended on by other parts of this repository, and are not typically intended to be used directly by users of Poststation. Currently this is just crates/poststation-api-icd, which contains types used to communicate with the Poststation server on the host side.

examples/

This folder contains end-to-end examples usable to demonstrate functionalty of Poststation. See examples/README.md for more details.

templates/

This folder is intended to contain up-to-date templates that can be used to start a project. You should generally be able to copy the directory, rename the projects, and use that as the beginning of your Poststation compatible project.

tools/

This folder contains tools that end-users are expected to be used by developers working with Poststation.

License

The poststation server is proprietary. All source code in this repository is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.


lib.rs:

API types and interfaces for interacting with Poststation

This crate currently documents two main APIs:

  • A "postcard-rpc over sockets" API that is use for the Rust SDK and the CLI interface
  • A "web tech" API, oriented towards REST and WebSockets that uses JSON for data.

If you are communicating with Poststation from the Rust language, it is recommended to use the postcard-rpc interface, generally through the poststation-sdk crate. If you are using another language, you will probably want to use the REST flavored API.

These different flavors of APIs will generally have similar interfaces, but the specific format used in either may vary based on the realities of the interfaces. As an example, the REST API may contain some data in the query parameters, rather than in the body of the request, and may prefer encoding serial numbers as hex strings instead of a numerical u64, due to the use of floating point numbers in JS itself as well as many JSON libraries.

Dependencies

~7–31MB
~443K SLoC