| Crates.io | daedelecs |
| lib.rs | daedelecs |
| version | 0.1.0 |
| created_at | 2025-06-24 18:05:47.193776+00 |
| updated_at | 2025-06-24 18:05:47.193776+00 |
| description | A Memory Safe, Type-Checked ECS System written in Rust |
| homepage | |
| repository | https://github.com/Daedelus1/DaedelECS |
| max_upload_size | |
| id | 1724844 |
| size | 71,720 |
DaedelECS is a lightweight, bare-bones, extensible Entity Component System implementation written entirely in Rust. It is published under the MIT License. It is still under active development, so expect frequent breaking changes.
Asserting that The Standard Library, quote and syn are all safe packages, This program is entirely memory Safe.
It is not possible to generate reference cycles in this program during normal use.
There are no novel unsafe blocks, and the only dependencies are quote and syn, both battle-tested pieces of
software, with over $600$ million and $900$ million downloads respectively. If there is a memory error, It is not
from this crate. This library is expecting an up-to-date Rust version, using the 2024 edition or later.
Add the following to your Cargo.toml
[dependancies]
daedelecs = "0"
daedelecs-core = "0"
And paste the following example code into your main.rs
#[derive(Component)]
struct ExampleComponent {}
struct ExampleSystem {}
impl System<()> for ExampleSystem {
type Data = ExampleComponent;
fn run(_entity: &mut Entity, _world: &mut World<()>) {
print!("Hello DaedelECS!")
}
}
fn main() {
let mut world = World::new(());
Entity::builder()
.with(ExampleComponent {})
.add_to_world(&mut world);
world.run_system::<ExampleSystem>();
}