The showcase
One engine. Fourteen very different tables.
The same @zvndev/yable-react powering a 30-second contact list, a 50,000-row virtualized grid, a real formula spreadsheet, server data, pivots, row grouping, and a live-ticking trading terminal — each in a different shipped theme.
Start simple
Contact directory
The 30-second table: sortable columns, instant search, badge + link cells.
Open demo →Simple · monoPricing comparison
A table that does not look like a table — grouped feature rows, check/cross cells.
Open demo →Simple · roseLive leaderboard
Read-only and proud: rank medals, rating stars, win-rate bars, tier badges.
Open demo →Simple · oceanAdaptive account desk
One table instance becomes a desktop grid, tablet card board, and mobile card feed.
Open demo →Then go deep
Budget spreadsheet
Real formula engine: type =SUM(B2:E2), drag the fill handle, paste a block.
Open demo →Complex · defaultSales CRM
Inline editing with optimistic async commits — pending, saved, and error states.
Open demo →Complex · forestServer data console
Cursor loading, server filtering/sorting, stale response guards, and optimistic rows.
Open demo →Complex · oceanSales by region
The 0.6.0 feature: group by region → category, collapsible headers, rolled-up totals.
Open demo →Complex · forestOrg chart
Hierarchical tree data with expand/collapse and headcount/budget roll-ups.
Open demo →Complex · midnightPivot analysis
getPivotRowModel() cross-tabs revenue by region × quarter with subtotals + grand total.
Open demo →Complex · mono50,000 rows
Row virtualization: sort, filter and scroll fifty thousand rows without breaking a sweat.
Open demo →Complex · midnightTrading terminal
Pinned columns, cell-range selection, and prices that tick live with flash animation.
Open demo →Complex · stripeProject tracker
Master/detail rows expand into task lists, with progress bars, status, and pagination.
Open demo →Complex · defaultTheme switcher
One dataset, eight shipped themes, live striped/bordered/compact toggles.
Open demo →