@@ -3,25 +3,48 @@ name = "proof-of-work"
33version = " 0.1.0"
44edition = " 2021"
55
6+ [features ]
7+ default = [" z3-verify" ]
8+ # Full features for production builds
9+ full = [" z3-verify" , " steam" , " network" ]
10+ # Z3 verification (requires libz3-dev)
11+ z3-verify = [" dep:z3" ]
12+ # Steam integration
13+ steam = [" dep:steamworks" ]
14+ # Network features
15+ network = [" dep:reqwest" , " dep:tokio" ]
16+ # Headless mode for testing without display
17+ headless = []
18+
619[dependencies ]
7- # Game engine
8- bevy = { version = " 0.17" , features = [" dynamic_linking" ] }
20+ # Game engine - use minimal features
21+ bevy = { version = " 0.17" , default-features = false , features = [
22+ " bevy_asset" ,
23+ " bevy_state" ,
24+ " bevy_winit" ,
25+ " bevy_render" ,
26+ " bevy_sprite" ,
27+ " bevy_core_pipeline" ,
28+ " bevy_log" ,
29+ " x11" ,
30+ " multi_threaded" ,
31+ ] }
932bevy_egui = " 0.38"
1033
11- # Verification
12- z3 = { version = " 0.19" , features = [" static-link-z3" ] }
34+ # Verification - optional, requires system libz3
35+ z3 = { version = " 0.19" , features = [" static-link-z3" ], optional = true }
1336
1437# Serialization
1538serde = { version = " 1" , features = [" derive" ] }
1639serde_json = " 1"
1740ron = " 0.12"
1841
19- # Steam integration
20- steamworks = " 0.12"
42+ # Steam integration - optional
43+ steamworks = { version = " 0.12" , optional = true }
2144
22- # Networking
23- reqwest = { version = " 0.12" , features = [" json" ] }
24- tokio = { version = " 1" , features = [" rt-multi-thread" , " macros" ] }
45+ # Networking - optional
46+ reqwest = { version = " 0.12" , features = [" json" ], optional = true }
47+ tokio = { version = " 1" , features = [" rt-multi-thread" , " macros" ], optional = true }
2548
2649# Hashing for signatures
2750sha2 = " 0.10"
@@ -40,3 +63,12 @@ opt-level = 3
4063lto = " thin"
4164codegen-units = 1
4265opt-level = 3
66+
67+ [[bin ]]
68+ name = " proof-of-work"
69+ path = " src/main.rs"
70+
71+ # Library for testing logic without UI
72+ [lib ]
73+ name = " proof_of_work"
74+ path = " src/lib.rs"
0 commit comments