# scsys
[](https://crates.io/crates/scsys)
[](https://docs.rs/scsys)
[](https://crates.io/crates/scsys)
[](https://github.com/Scattered-Systems/scsys/actions/workflows/clippy.yml)
[](https://github.com/Scattered-Systems/scsys/actions/workflows/rust.yml)
***
_**Warning: the library is currently in development so be prepared for major modifications to the API!**_
Welcome to `scsys`, a collection of useful utilities, types, and other primitives that are used in various projects developed by [Scattered Systems](https://github.com/scattered-systems). The library is designed to be a general-purpose utility library that can be used in any Rust project, aiming to provide a standardized set of tools that can be used to build robust and reliable software.
## Getting Started
## Building from the source
Make sure you have the latest version of the Rust toolchain installed on your system.
```bash
rustup update
```
### _Clone the repository_
```bash
git clone https://github.com/scattered-systems/scsys.git
```
then, navigate to the project directory
```bash
cd scsys
```
### _Building Locally_
```bash
cargo build --all-features -v --workspace
```
### _Testing_
Automatically format and analyze the codebase before building then testing.
```bash
cargo test --all-features -r -v --workspace
```
### Usage
#### _Add the dependency to your project_
```toml
[dependencies.scsys]
features = ["full"]
version = "0.2.*"
```
#### Examples
##### _Example: Using the `Message` type_
```rust
use scsys::prelude::*;
fn main() {
println!("{:?}", Message::<String>::default());
}
```
## License
Licensed under the Apache License, Version 2.0, ([LICENSE-APACHE](http://www.apache.org/licenses/LICENSE-2.0))
## Contribution
Contributions are welcome, however, ensure that you have read the [CONTRIBUTING.md](CONTRIBUTING.md) file before submitting a pull request.