Architecture Refactoring & Critical Fixes Release
Radix-Leptos v0.9.0 represents a major milestone in the project's evolution, featuring a complete architecture refactoring, critical bug fixes, and significant improvements to code organization and maintainability.
We've completely refactored the codebase to improve maintainability and organization:
-
Pagination System: Split
pagination.rs(932 lines) into modular components:pagination/context.rs- Context provider for pagination statepagination/items.rs- Individual pagination itemspagination/helpers.rs- Utility functionspagination/mod.rs- Module exports
-
Form Validation System: Split
form_validation.rs(884 lines) into:form_validation/validation.rs- Core validation logicform_validation/fields.rs- Form field componentsform_validation/controls.rs- Form control componentsform_validation/mod.rs- Module exports
-
Theming System: Refactored large theme files:
prebuilt_themes.rs(895 lines) →prebuilt_themes/(light, dark, color_schemes, theme_builder)component_variants.rs(894 lines) →component_variants/(button, input, layout, feedback, data)layout_system.rs(1,150 lines) →layout_system/(container, spacing, responsive)theme_customization.rs(866 lines) →theme_customization/(css_editor, theme_export)
Introduced a comprehensive feature flag system for optimal bundle sizes:
core: Production-ready components (always available)experimental: Incomplete/experimental components (feature-gated)full: All components (core+experimental)
# Production (recommended)
radix-leptos = { version = "0.9.0", features = ["core"] }
# Development (all components)
radix-leptos = { version = "0.9.0", features = ["full"] }
# Experimental (use with caution)
radix-leptos = { version = "0.9.0", features = ["experimental"] }- 45 compilation errors → 0 errors
- Fixed Label component missing
view!returns - Fixed Button component children rendering
- Fixed form validation test compilation issues
- Fixed date/time validation functions with proper range validation
- Cleaned up unused variables across components
- Wired event handlers to DOM elements in Tabs and RadioGroup
- Centralized
merge_classesandgenerate_idutilities - Fixed all function signature mismatches
- Removed duplicate utility implementations
- Updated all components to use centralized utilities
- 1,865 tests passing (100% success rate)
- Fixed date validation (proper month/day validation)
- Fixed time validation (proper hour/minute/second validation)
- All integration tests passing
MODULE_ARCHITECTURE.md: Comprehensive guide to module structure and feature flags- Updated README.md: Module structure and feature flag documentation
- Updated API Documentation: Modular component documentation
- Updated Repository Structure: New architecture documentation
- Clear migration instructions from v0.8.5 to v0.9.0
- Feature flag usage examples
- Bundle size optimization recommendations
- Reduced compilation time through modular architecture
- Optimized bundle sizes with feature gating
- Improved code organization for better IDE support
- Centralized utility functions reduce code duplication
- Better tree-shaking with feature flags
- Optimized component loading
None! This release maintains full backward compatibility.
[dependencies]
radix-leptos = "0.9.0"
leptos = "0.8.8"
# For minimal bundle size (recommended for production)
radix-leptos = { version = "0.9.0", features = ["core"] }
# For all components
radix-leptos = { version = "0.9.0", features = ["full"] }- v1.0.0: Complete Radix UI parity
- Enhanced Testing: More comprehensive test coverage
- Performance Optimization: Further bundle size improvements
- Documentation: Expanded component examples and guides
This release represents a significant effort in code organization and quality improvement. Special thanks to all contributors and the community for their support.
- Files Changed: 115 files
- Lines Added: 9,511
- Lines Removed: 4,421
- Compilation Errors Fixed: 45 → 0
- Tests Passing: 1,865 (100% success rate)
- Components: 57+ components with feature gating
Full Changelog: https://github.com/cloud-shuttle/radix-leptos/compare/v0.8.5...v0.9.0
Documentation: https://docs.rs/radix-leptos/0.9.0
Repository: https://github.com/cloud-shuttle/radix-leptos