# gem
Color representations and conversions.
[](https://github.com/crates-lurey-io/gem/actions/workflows/test.yml)
[](https://github.com/crates-lurey-io/gem/actions/workflows/docs.yml)
[](https://crates.io/crates/gem)
[](https://codecov.io/gh/crates-lurey-io/gem)
## Examples
```sh
cargo run --example draw-png --features bytemuck
```
```rust
use gem::prelude::*;
let mut red_box_50x50 = vec![Abgr8888::from_abgr(0xFF, 0x00, 0x00, 0xFF); 50 * 50];
// Make a semi-transparent blue box in the middle of the image
for y in 0..50 {
for x in 0..50 {
if (10..40).contains(&x) && (10..40).contains(&y) {
red_box_50x50[y * 50 + x] = Abgr8888::from_abgr(0x7F, 0x7F, 0x00, 0xFF);
}
}
}
```

## Contributing
This project uses [`just`][] to run commands the same way as the CI:
- `cargo just check` to check formatting and lints.
- `cargo just coverage` to generate and preview code coverage.
- `cargo just doc` to generate and preview docs.
- `cargo just test` to run tests.
[`just`]: https://crates.io/crates/just
For a full list of commands, see the [`Justfile`](./Justfile).