freecs 3.3.2

A high-performance, archetype-based Entity Component System (ECS) written in Rust.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.90"
name = "freecs"
version = "3.3.2"
authors = ["Matthew Berger <matthewjordanberger@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
A high-performance, archetype-based Entity Component System (ECS) written in Rust.
"""
homepage = "https://github.com/matthewjberger/freecs"
readme = "README.md"
keywords = [
    "macro",
    "ecs",
]
license = "MIT"
repository = "https://github.com/matthewjberger/freecs"

[features]
audio = []
default = ["serde"]
dynamic = []
serde = ["dep:serde"]
snapshot = [
    "dynamic",
    "serde",
    "dep:postcard",
]

[lib]
name = "freecs"
path = "src/lib.rs"

[[example]]
name = "asteroids"
path = "examples/asteroids.rs"

[[example]]
name = "boids"
path = "examples/boids.rs"

[[example]]
name = "dynamic"
path = "examples/dynamic.rs"
required-features = ["dynamic"]

[[example]]
name = "multi_world"
path = "examples/multi_world.rs"

[[example]]
name = "pong"
path = "examples/pong.rs"

[[example]]
name = "scheduling"
path = "examples/scheduling.rs"

[[example]]
name = "simple"
path = "examples/simple.rs"

[[example]]
name = "tower-defense"
path = "examples/tower-defense.rs"

[[example]]
name = "tower-defense-cards"
path = "examples/tower-defense-cards.rs"

[[example]]
name = "tower-defense-dynamic"
path = "examples/tower-defense-dynamic.rs"
required-features = ["dynamic"]

[[bench]]
name = "dynamic_benchmarks"
path = "benches/dynamic_benchmarks.rs"
harness = false
required-features = ["dynamic"]

[[bench]]
name = "ecs_benchmarks"
path = "benches/ecs_benchmarks.rs"
harness = false

[dependencies.paste]
version = "0.2"
package = "pastey"

[dependencies.postcard]
version = "1.1"
features = ["alloc"]
optional = true

[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true

[dev-dependencies.criterion]
version = "0.7.0"
features = ["html_reports"]

[dev-dependencies.macroquad]
version = "0.4.14"

[dev-dependencies.rand]
version = "0.9.2"

[target.'cfg(not(target_family = "wasm"))'.dependencies.rayon]
version = "1.11"