boxdd 0.1.1

Safe, ergonomic Rust bindings for Box2D v3
Documentation
[package]

name = "boxdd"

version = "0.1.1"

edition = "2024"

description = "Safe, ergonomic Rust bindings for Box2D v3"

license = "MIT OR Apache-2.0"

repository = "https://github.com/Latias94/boxdd"

homepage = "https://github.com/Latias94/boxdd"

readme = "../README.md"

documentation = "https://docs.rs/boxdd"

keywords = ["box2d", "physics", "game", "simulation"]

categories = ["game-engines"]



# Keep the crate size reasonable; exclude examples and tests from the crate package

exclude = ["examples/**", "tests/**"]



[dependencies]

boxdd-sys = { version = "0.1", path = "../boxdd-sys" }

thiserror = "2"

mint = "0.5"

smallvec = "1"

serde = { version = "1", features = ["derive"], optional = true }

cgmath = { version = "0.18", optional = true }

nalgebra = { version = "0.34", optional = true }

glam = { version = "0.30", optional = true }



[features]

default = []

# Build the ImGui + Glow testbed example when this feature is enabled

imgui-glow-testbed = []



# Optional integration features

# Enable serde for basic value/config types (Vec2, Rot, Transform, etc.)

serde = ["dep:serde"]

# Alias to match prior art naming

serialize = ["serde"]

# Interop with common math libraries

cgmath = ["dep:cgmath"]

nalgebra = ["dep:nalgebra"]

glam = ["dep:glam"]



# Performance / debug features (forwarded to sys)

simd-avx2 = ["boxdd-sys/simd-avx2"]

disable-simd = ["boxdd-sys/disable-simd"]

validate = ["boxdd-sys/validate"]

pkg-config = ["boxdd-sys/pkg-config"]



[package.metadata.docs.rs]

all-features = false

no-default-features = false

features = []

rustdoc-args = ["--cfg", "docsrs"]



[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]

dear-imgui-rs = "0.3"

dear-imgui-winit = "0.3"

dear-imgui-glow = "0.3"

winit = "0.30"

glow = "0.16"

glutin = "0.32"

glutin-winit = "0.5"

env_logger = "0.11"



[dev-dependencies]

serde_json = "1"



[[example]]

name = "testbed_imgui_glow"

path = "examples/testbed_imgui_glow.rs"

required-features = ["imgui-glow-testbed"]



[[example]]

name = "scene_serialize"

path = "examples/scene_serialize.rs"

required-features = ["serialize"]