# Roast2D

[![Crates.io](https://img.shields.io/crates/v/roast2d.svg)](https://crates.io/crates/roast2d)
[![Docs](https://docs.rs/roast2d/badge.svg)](https://docs.rs/roast2d/latest/roast2d/)
[![CI](https://github.com/jjyr/roast2d/workflows/CI/badge.svg)](https://github.com/jjyr/roast2d/actions)

Roast2D is a rapid development 2D game engine written in Rust.

## Features

- Minimal ECS, use a thin layer upon vector to store components
- Simple and intuitive 2D graphics API
- Multi-platform (with wgpu and winit)
- Hot reload

## Examples

A copy of the classic [breakout][breakout] shows the basic usage

## Usage

Run example:

``` bash
cargo run --example breakout
```

Add `roast2d` to Rust project:

``` bash
cargo add roast2d
```

Check [hot-reload example][hotreload] to learn hot-reload integration.

## License

The source code is licensed under MIT.

[breakout]: https://github.com/jjyr/roast2d/tree/master/examples/breakout.rs
[hotreload]: https://github.com/jjyr/roast2d/tree/master/examples/hotreload
