77 lines
2.0 KiB
TOML
77 lines
2.0 KiB
TOML
[package]
|
|
name = "ruvector-ios-wasm"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "iOS & Browser optimized WASM vector database with HNSW, quantization, and ML"
|
|
license = "MIT"
|
|
authors = ["Ruvector Team"]
|
|
repository = "https://github.com/ruvnet/ruvector"
|
|
|
|
# Keep out of parent workspace
|
|
[workspace]
|
|
|
|
[lib]
|
|
crate-type = ["cdylib", "rlib"]
|
|
|
|
[dependencies]
|
|
# Browser support (optional - adds ~50KB)
|
|
wasm-bindgen = { version = "0.2", optional = true }
|
|
js-sys = { version = "0.3", optional = true }
|
|
web-sys = { version = "0.3", features = ["console"], optional = true }
|
|
serde = { version = "1.0", features = ["derive"], optional = true }
|
|
serde-wasm-bindgen = { version = "0.6", optional = true }
|
|
serde_json = { version = "1.0", optional = true }
|
|
|
|
[features]
|
|
default = []
|
|
|
|
# Browser target with wasm-bindgen (Safari, Chrome, Firefox)
|
|
browser = ["dep:wasm-bindgen", "dep:js-sys", "dep:web-sys", "dep:serde", "dep:serde-wasm-bindgen", "dep:serde_json"]
|
|
|
|
# SIMD acceleration (iOS 16.4+ / Safari 16.4+ / Chrome 91+)
|
|
simd = []
|
|
|
|
# All features for maximum capability
|
|
full = ["browser", "simd"]
|
|
|
|
# ============================================
|
|
# Build Profiles
|
|
# ============================================
|
|
|
|
[profile.release]
|
|
opt-level = "z" # Maximum size optimization
|
|
lto = "fat" # Link-Time Optimization
|
|
codegen-units = 1 # Single codegen unit
|
|
panic = "abort" # No unwinding
|
|
strip = "symbols" # Strip debug symbols
|
|
incremental = false # Better optimization
|
|
|
|
[profile.release.package."*"]
|
|
opt-level = "z"
|
|
|
|
# Speed-optimized profile (larger binary, faster execution)
|
|
[profile.release-fast]
|
|
inherits = "release"
|
|
opt-level = 3 # Speed optimization
|
|
lto = "thin" # Faster linking
|
|
|
|
[profile.dev]
|
|
opt-level = 1
|
|
debug = true
|
|
|
|
[profile.bench]
|
|
inherits = "release"
|
|
debug = false
|
|
|
|
# ============================================
|
|
# Benchmarks
|
|
# ============================================
|
|
|
|
[[bin]]
|
|
name = "benchmark"
|
|
path = "benches/performance.rs"
|
|
|
|
[[bin]]
|
|
name = "ios_simulation"
|
|
path = "benches/ios_simulation.rs"
|