Skip to content

perf(table): implement virtualized table list for improved performance#365

Closed
ifeelBALANCED wants to merge 14 commits intomainfrom
feat/schema-table-virtualization
Closed

perf(table): implement virtualized table list for improved performance#365
ifeelBALANCED wants to merge 14 commits intomainfrom
feat/schema-table-virtualization

Conversation

@ifeelBALANCED
Copy link
Copy Markdown
Collaborator

@ifeelBALANCED ifeelBALANCED commented Feb 19, 2026

Fixes #363

Description:

  • Fixed tables-tree bugs: now uses the schema header map and scroll viewport as root; active schema is cleared when none intersect; wrapper is motion.div; ref callback no longer returns a value.
  • Active schema accordion header is sticky; offset top-2 so it stays below the search field.
2026-02-19.23.00.39.mov

Copilot AI review requested due to automatic review settings February 19, 2026 20:14
@railway-app
Copy link
Copy Markdown

railway-app Bot commented Feb 19, 2026

This PR was not deployed automatically as @ifeelBALANCED does not have access to the Railway project.

In order to get automatic PR deploys, please add @ifeelBALANCED to your workspace on Railway.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds schema-aware table list virtualization and a “current schema” sticky indicator to improve usability/performance when browsing large table sets in the database sidebar.

Changes:

  • Introduces a useActiveSchema hook to compute the “active” schema based on scroll position.
  • Adds VirtualizedTableList using @tanstack/react-virtual for schemas with large table counts.
  • Adds a StickyHeader component and makes the active schema’s accordion trigger sticky when open.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 6 comments.

File Description
apps/desktop/src/routes/_protected/database/$id/table/-components/use-active-schema.ts New hook to derive active schema id from scroll position and report whether it’s expanded.
apps/desktop/src/routes/_protected/database/$id/table/-components/tables-tree.tsx Integrates virtualization, sticky trigger styling, and sticky header rendering into the tables tree UI.
apps/desktop/src/routes/_protected/database/$id/table/-components/sticky-header.tsx New animated sticky header component showing the currently active schema.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread apps/desktop/src/routes/_protected/database/$id/table/-components/tables-tree.tsx Outdated
Comment thread apps/desktop/src/routes/_protected/database/$id/table/-components/tables-tree.tsx Outdated
Comment thread apps/desktop/src/routes/_protected/database/$id/table/-components/tables-tree.tsx Outdated
@ifeelBALANCED ifeelBALANCED changed the title Feat/schema table virtualization feat: implement virtualized table list for improved performance Feb 19, 2026
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks Good

@geekyharsh05
Copy link
Copy Markdown
Contributor

@ifeelBALANCED 60fps 🔥

@ifeelBALANCED ifeelBALANCED force-pushed the feat/schema-table-virtualization branch from 22914cd to 229c5a9 Compare February 20, 2026 20:58
@Rudra-Sankha-Sinhamahapatra Rudra-Sankha-Sinhamahapatra changed the title feat: implement virtualized table list for improved performance perf(table): implement virtualized table list for improved performance Feb 22, 2026
@letstri letstri closed this Mar 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

add virtualization for schema tables list

5 participants