Releases: Black-Cockpit/yew-datatable
Release list
v0.2.1
v0.2.0: Merge pull request #4 from Black-Cockpit/upgrading-yew-version
Upgraded Yew from 0.22.0 to 0.23.0.
Bug Fixes
Fixed components not re-rendering when table state changes (data, sorting,
pagination, filtering, row selection). All four component props had custom
PartialEq implementations that excluded the table handle, so Yew never
detected prop changes. The render_cell callback on TableBody was also
excluded and is now treated as always changed when present.
The key workaround previously required to force re-renders can be safely
removed.
Affected: TableBody, TableHeader, DataTable, Pagination.
Other Changes
Extracted CellRenderContext into its own file for code convention compliance.
Added integration tests for component re-rendering behavior.
v0.1.0
What's Changed
💯 Fixed table re-rendering for async data.
v0.1.0
yew-datatable v0.1.0
We’re excited to announce the first release of yew-datatable — a powerful, headless data table library built specifically for Yew applications and inspired by the flexibility and architecture of TanStack Table v8.
This release introduces a modern table engine designed for Rust WebAssembly frontends, combining strong typing, composable features, and full control over UI rendering.
Overview
yew-datatable delivers a modular table engine where logic and UI are completely separated. The library focuses purely on table behavior while allowing developers to fully control layout, markup, and styling within their Yew components.
Built with Rust’s type system at its core, the library provides compile-time guarantees, predictable data processing, and a scalable architecture for complex table-driven applications.
✨ Key Features
🧩 Headless Architecture
Pure table logic with no UI assumptions, giving developers complete freedom over rendering and styling.
🛡️ Type-Safe Columns
Strongly typed column definitions using ColumnDef<T> ensure compile-time safety and reliable data access.
⚙️ Automatic Data Pipeline
Rows automatically flow through a deterministic pipeline:
filter → sort → group → expand → paginate
🪝 Hook-Based API
The use_table hook provides a familiar and ergonomic developer experience similar to TanStack’s table architecture.
🔒 100% Safe Rust
Implemented entirely with safe Rust — no unsafe blocks — ensuring memory safety by design.
🚀 Feature Set
🔄 Sorting
Single-column and multi-column sorting with support for custom comparators.
🔍 Filtering
Sixteen built-in filtering functions with the ability to define custom filters.
📄 Pagination
Supports both client-side and server-side pagination workflows.
✅ Row Selection
Flexible row selection including single-row, multi-row, and select-all capabilities.
🧭 Column Management
Control column visibility, ordering, pinning, and resizing.
🌳 Row Expansion
Expandable rows with support for hierarchical or tree-based data.
📊 Grouping & Aggregation
Multi-level grouping with nine built-in aggregation functions.
yew-datatable v0.1.0 provides a solid foundation for building advanced data-driven interfaces in Yew, delivering flexibility, safety, and performance for modern Rust web applications.
Full Changelog: https://github.com/Black-Cockpit/yew-datatable/commits/v0.1.0