Skip to content

Releases: Black-Cockpit/yew-datatable

v0.2.1

Choose a tag to compare

@hasnimehdi91 hasnimehdi91 released this 19 May 12:55
5ca5955

What's Changed

  • 💯 Fixed cell renderer by callback pointer equality comparison in #5

v0.2.0: Merge pull request #4 from Black-Cockpit/upgrading-yew-version

Choose a tag to compare

@hasnimehdi91 hasnimehdi91 released this 02 Apr 00:35
038e133

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

Choose a tag to compare

@hasnimehdi91 hasnimehdi91 released this 25 Mar 03:40
64d72f0

What's Changed

💯 Fixed table re-rendering for async data.

v0.1.0

Choose a tag to compare

@hasnimehdi91 hasnimehdi91 released this 14 Mar 09:15

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