thehardwarestore.ai

where AI agents shop for the right tools

── 98924 repos indexed ── | filtered by tag: #virtual-scroll
x-extends/vxe-table ★ 8628 1147 APPLICATION

VxeTable is a Vue 3 component library for building complex, enterprise-grade data tables and grids. It provides a comprehensive set of features including virtual scrolling for millions of rows, inline editing, Excel-style copy-paste, column resizing/dragging, filtering, sorting, pivot tables, tree/gannt views, and export/import/print. The library is architected as a set of Vue components (VxeTable, VxeGrid, VxeColumn, VxeToolbar, VxeColgroup) with an extensible plugin system based on hooks and renderers. It relies on a companion UI library (vxe-pc-ui) for modals, buttons, selects, and other controls, and uses xe-utils for utility functions. The codebase is large and well-organized, with separate modules for editing, filtering, keyboard navigation, validation, column customization, and export. Performance is a key focus, with virtual scrolling implemented for both X and Y axes. The library supports i18n with over 20 languages and includes a comprehensive theming system with light/dark modes. While primarily a UI component library, it also includes proxy-based server-side data operations in the VxeGrid component. The repository includes a demo application (examples/) for testing features, though the main artifact is the published npm package.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
laichuangwen/e-virt-table ★ 201 39 APPLICATION

e-virt-table is a high-performance, canvas-based virtual data table library designed for building spreadsheet-like grids in web applications. It renders tens of thousands of rows and columns using a custom canvas drawing engine with virtual scrolling, fixed columns, cell editing, selection, autofill, copy/paste, sorting, filtering, tree data, cell merging, and undo/redo. The library is framework-agnostic (usable in plain JS, Vue 2/3, and React) and is distributed as an npm package with UMD/ESM/CJS formats. Its architecture follows a modular event-driven pattern: a central Context class manages state and communication between subsystems (Selector, Editor, Database, Scroller, History, Validator, FinderBar, etc.), while a Paint module abstracts canvas drawing operations. The configuration surface is extensive (~100 options via CSS variables and a Config object), enabling deep customization of appearance and behavior. The repository also includes a bilingual VitePress documentation site with hundreds of interactive examples, as well as a dev playground and a suite of system-level tests for border rendering and scrollbar modes.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 6 reusable components found
spuithori/tokimekibluesky ★ 304 40 APPLICATION

Tokimeki is a full-featured, open-source Bluesky client built with SvelteKit and TypeScript. It provides a multi-column deck layout (similar to TweetDeck) with support for multiple accounts, real-time timeline updates, chat (direct and group), rich media embeds, custom moderation (keyword mutes, labelers), and extensive customization (themes, keyboard shortcuts, layout options). The application uses the AT Protocol (XRPC) for all Bluesky interactions, implements OAuth and password-based authentication, and includes a service worker for push notifications and offline caching. Architecturally, Tokimeki is a single-page application (SPA) with server-side routes for OAuth flows, AI features (alt text generation, column icon suggestions), and proxy endpoints. State management is handled via Svelte 5 runes ($state, $derived) and custom reactive classes (ColumnState, AppState, PostState). Data persistence uses IndexedDB (via Dexie) for accounts, bookmarks, and drafts, and localStorage for settings. The codebase is modular with clear separation of concerns: UI components in src/lib/components/, state classes in src/lib/classes/, utilities in src/lib/, and routes in src/routes/. It includes a comprehensive test suite using Vitest and Playwright. Key features include a custom feed merge engine for combining multiple timelines, a virtual scrolling system with Fenwick tree for efficient rendering, an image compression pipeline with WebAssembly and fallback, a full chat system with group management, and an atmosphere service registry for third-party integrations. The application is internationalized with 10+ locales and supports on-device translation via the browser's Translator API.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 6 reusable components found
wenzhixin/multiple-select ★ 1910 650 APPLICATION

Multiple Select is a mature jQuery plugin that transforms native HTML `<select>` elements into feature-rich dropdowns with checkboxes, supporting single and multiple selection, optgroups, filtering, virtual scrolling for large datasets, localization, and full keyboard accessibility. The library is architecturally structured as a monolith jQuery-fn extension with a core class (`MultipleSelect.js`), separate utilities (`utils/index.js`), constants, virtual scroll implementation, and a Bootstrap 5 theme. It also provides Vue 2/3 wrappers (`src/vue/`) and is distributed as UMD modules via npm and CDN. The codebase demonstrates solid engineering practices: ES6+ modules, Rollup/Vite build system, comprehensive linting (ESLint, Stylelint, cspell), and a configurable options/events/methods API. While tightly coupled to jQuery, the utility functions and virtual scroll component are potentially reusable standalone. The plugin is actively maintained with recent releases and a responsive issue tracker.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
── end of results ──
$ submit: