content: [package]
  name = "gorilla-physics"
  version = "0.1.0"
  edition = "2021"
  
  [lib]
  name = "gorilla_physics"
  path = "src/lib.rs"
  crate-type = ["cdylib", "rlib"]
  
  [[bin]]
  name = "pendulum_energy"
  path = "examples/pendulum_energy.rs"
  
  [[bin]]
  name = "cart"
  path = "examples/cart.rs"
  
  [[bin]]
  name = "cart_pole"
  path = "examples/cart_pole.rs"
  
  [[bin]]
  name = "double_pendulum"
  path = "examples/double_pendulum.rs"
  
  [[bin]]
  name = "acrobot"
  path = "examples/acrobot.rs"
  
  [[bin]]
  name = "ball"
  path = "examples/ball.rs"
  
  [[bin]]
  name = "1D_hopper"
  path = "examples/1D_hopper.rs"
  
  [[bin]]
  name = "cube"
  path = "examples/cube.rs"
  
  [[bin]]
  name = "rimless_wheel"
  path = "examples/rimless_wheel.rs"
  
  [[bin]]
  name = "SLIP"
  path = "examples/SLIP.rs"
  
  
  [[bin]]
  name = "LSLIP"
  path = "examples/LSLIP.rs"
  
  [[bin]]
  name = "ALSLIP"
  path = "examples/ALSLIP.rs"
  
  [[bin]]
  name = "rod_by_spring"
  path = "examples/rod_by_spring.rs"
  
  [[bin]]
  name = "spring_drop"
  path = "examples/spring_drop.rs"
  
  [[bin]]
  name = "pusher"
  path = "examples/pusher.rs"
  
  [[bin]]
  name = "read_bunny_mass_spring"
  path = "examples/read_bunny_mass_spring.rs"
  
  
  [[bin]]
  name = "fem"
  path = "examples/fem.rs"
  
  [[bin]]
  name = "socp"
  path = "examples/socp.rs"
  
  [[bin]]
  name = "constraint_contact"
  path = "examples/constraint_contact.rs"
  
  [[bin]]
  name = "unconstrained_qp"
  path = "examples/unconstrained_qp.rs"
  
  [dependencies]
  cfg-if = "1"
  itertools = "0.13.0"
  nalgebra = { version = "0.33", features = [] }
  nalgebra-sparse = "0.10"
  plotters = "0.3.5"
  ordered-float = "5.0.0"
  clarabel = "0"
  wgpu = "25.0.0"
  pollster = "0.4"
  bytemuck = "1.22.0"
  flume = "0.11.1"
  wasm-bindgen = "0.2"
  wasm-bindgen-futures = "0.4"
  web-sys = { version = "0.3", features = [
      'console',
      "Window",
      "Response",
      "Request",
      "Document",
      "Element",
      "Performance",
      "TextDecoder",
  ] }
  console_error_panic_hook = "0.1"
  futures = "0.3"
  rand = "0.9.0"
  rand_chacha = "0.9" # for seedable deterministic randomness
  # faer = "0.20"
  # faer-ext = "0.4"
  # rayon = "1.10.0"
  # wasm-bindgen-rayon = { path = "../wasm-bindgen-rayon"}
  
  
  [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
  tokio = { version = "1.45.0", features = ["full"] }
  
  [target.'cfg(target_arch = "wasm32")'.dependencies]
  wgpu = { version = "25.0.0", features = ["webgl"] }
  getrandom = { version = "0.3", features = ["wasm_js"] }
  
  
  [dev-dependencies]
  nalgebra = { version = "0.33", features = ["rand"] }
  
  [profile.release]
  strip = true
  
  [features]
  gpu = []
  
  [lints.rust]
  unexpected_cfgs = { level = "allow", check-cfg = ['cfg(rust_analyzer)'] }
  