Files
leptos-shadcn-ui/packages/contract-testing/Cargo.toml
Peter Hanssens 2b99fcc315 feat: Add WASM-optimized ShadCN UI package
🚀 New Features:
- Add leptos-shadcn-ui-wasm package with minimal dependencies
- 10 core components optimized for WebAssembly
- Feature flags for granular bundle control
- WASM-specific utilities and helpers

🔧 Technical Improvements:
- Fix WASM compatibility issues in test-utils package
- Add conditional compilation for native vs WASM targets
- Update contract-testing package for WASM compatibility
- Add comprehensive WASM demo application

📦 Bundle Optimization:
- 70% reduction in dependencies (150+ → 25)
- WASM-compatible only dependencies
- Gzipped bundle size: ~813KB for full demo

📚 Documentation:
- Complete README with examples and migration guide
- Bundle size comparisons and performance metrics
- Comprehensive remediation plan and design docs

 Testing:
- All packages compile for wasm32-unknown-unknown
- Feature flags work correctly
- Demo builds and runs successfully
- Backward compatibility maintained
2025-09-21 19:12:37 +10:00

48 lines
1.2 KiB
TOML

[package]
name = "leptos-shadcn-contract-testing"
version = "0.8.0"
edition = "2021"
description = "Contract testing framework for leptos-shadcn-ui components"
license = "MIT"
authors = ["CloudShuttle <info@cloudshuttle.com>"]
[dependencies]
leptos = "0.8"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "2.0"
proptest = "1.0"
semver = "1.0"
anyhow = "1.0"
chrono = { version = "0.4", features = ["serde"] }
# Testing utilities (native only)
# Optional dependencies
wasm-bindgen-test = { version = "0.3", optional = true }
web-sys = { version = "0.3", features = ["console"], optional = true }
[dev-dependencies]
tempfile = "3.0"
[features]
default = ["validation"]
validation = []
wasm-testing = ["dep:wasm-bindgen-test", "dep:web-sys"]
# Conditional dependencies for different targets
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { version = "1.0", features = ["macros", "rt-multi-thread", "time"] }
tokio-test = "0.4"
criterion = { version = "0.5", features = ["html_reports"] }
env_logger = "0.10"
[[bin]]
name = "fix_dependencies"
path = "src/bin/fix_dependencies.rs"
# Benchmarks will be added later
# [[bench]]
# name = "contract_performance"
# harness = false
# required-features = ["performance-testing"]