Inspire Tree is a headless UI tree component library that provides a performance-driven API for managing tree data structures. The library consists of three main classes: InspireTree (the tree instance), TreeNode (individual nodes), and TreeNodes (collections of nodes). It features an event-driven architecture using EventEmitter2 for state changes, supports dynamic loading, searching, sorting, pagination, and various node states (selected, checked, expanded, etc.). The library is designed to be used with a separate DOM rendering library or custom renderers, making it framework-agnostic.
This repository is an educational library providing implementations of fundamental data structures and algorithms in JavaScript and TypeScript. It covers arrays, stacks, queues, linked lists, sets, dictionaries/hash tables, trees (BST, AVL, Red-Black, Fenwick, Segment), heaps, tries, and graphs, along with associated algorithms (sorting, searching, graph traversals, shortest paths, minimum spanning trees). The code is well-structured, generic, and thoroughly tested with Jest. Each data structure and algorithm is presented as an independent module, making it easy to study or reuse. The TypeScript versions include type annotations and complexity documentation. While primarily a learning resource, the implementations are production-quality and can be extracted for use in other projects.
This repository is a comprehensive, educational library of data structures and algorithms implemented in Python 3. It is organized into subpackages by algorithmic category (sorting, searching, graph, dynamic programming, backtracking, bit manipulation, string, tree, math, matrix, compression, streaming, etc.), each containing self-contained modules with clear function signatures, docstrings, complexity analysis, and often multiple implementation variants. The library is installable via pip and intended for learning, reference, and reuse in competitive programming or software development. It is not an application or data pipeline; it has no web server, CLI entry point, or external runtime dependencies beyond the Python standard library. The architecture is a flat library with a shared `algorithms/common` module providing reusable data types (`TreeNode`, `ListNode`, `Graph`) and each subpackage re-exporting its public API through `__init__.py` files. The codebase demonstrates a mix of modern and legacy Python styles, with newer modules using type hints, dataclasses, and doctests, while older modules rely on bare comments and local node definitions. Despite some inconsistencies and minor bugs, the repository is a well-structured, actively maintained collection that serves as a valuable reference for algorithm implementations.
openacid/slim is a Go library for building memory-efficient, serializable trie indexes and sparse arrays, primarily designed for in-memory indexing of large on-disk key-value data. The core artifact is SlimTrie, a compressed trie that achieves roughly 11 bits per key while supporting fast Get, range queries, prefix scans, and versioned marshal/unmarshal. The repository also contains a standalone sparse-array package and a type-safe encoder framework, with extensive benchmarks comparing against Go maps and btree indexes. Its architecture is modular: the trie package defines the index structure, the array package provides bitmap-backed dense/sparse storage primitives, and the encode package abstracts value serialization with generated concrete implementations.
@antv/hierarchy is a TypeScript library providing layout algorithms for visualizing hierarchical data. It implements four primary layout types: compact box, dendrogram, indented, and mindmap layouts. The library takes tree-structured data as input and returns positioned nodes with x/y coordinates for rendering. Built with a modular architecture, it separates core tree construction from layout algorithms and directional handling, enabling clean extension and customization. The package is published as an ES module with UMD fallback and includes comprehensive type definitions.
tksheet is a pure Python Tkinter widget library that provides a full-featured, interactive spreadsheet-like table and treeview component for embedding in desktop applications. It renders only visible cells using Tkinter canvases, supporting cell editing, dropdowns, checkboxes, progress bars, notes/tooltips, find/replace, sorting, undo/redo, clipboard operations, and extensive theming. The architecture is modular, with separate classes for the main table, column headers, row index, text editor, and dropdown windows, all orchestrated by a central `Sheet` class that exposes a rich API for data manipulation and event handling. The library demonstrates strong software craftsmanship through its use of reusable patterns such as `Span` objects for addressing cell ranges with method chaining, `DotDict` for attribute-accessible configuration dictionaries, and a consistent `EventDataDict` structure for undo/redo and event propagation. It also includes self-contained utility modules for data formatting (`Formatter` class) and sorting (natural, version, and fast sort keys) that could be extracted and reused independently. Development of tksheet has officially ceased except for bug fixes and behavioral issues, as stated in the README. The codebase is mature and stable, with extensive documentation and a changelog spanning multiple major versions. While the library is tightly coupled to Tkinter and has some code duplication across similar components (e.g., column headers and row index), it remains a high-quality, production-ready widget for any Python GUI application requiring tabular data interaction.
Sled is an embedded key-value store written in Rust that provides ACID transactions, crash safety, and high concurrency. It uses a lock-free architecture based on a lock-free pagecache, lock-free log, and lock-free B+ tree with epoch-based memory reclamation. The database supports multiple keyspaces, watch prefixes, merge operators, and a crash-safe monotonic ID generator. Currently in active development with a major rewrite underway (komora project), it is alpha software with known instability and frequent breaking changes, but demonstrates advanced concurrent data structure techniques.
react-dropdown-tree-select is a React component library that provides a dropdown interface for selecting items from hierarchical tree data. The component supports multiple selection modes (multi-select, simple select, radio select, and hierarchical), displays selected items as tags/pills, includes search functionality with progressive filtering and debouncing, offers keyboard navigation, and implements accessibility features through ARIA attributes. The architecture centers around a DropdownTreeSelect component that uses a TreeManager to handle tree state and operations, with supporting components for rendering trees, nodes, tags, and controls. Performance optimizations include virtualized rendering via react-infinite-scroll-component, search debouncing, and progressive filtering that reduces search scope with each keystroke.
PrimeReact is a comprehensive React UI component library providing over 80 components including forms, data tables, overlays, menus, charts, and more. The repository also contains its official documentation website built with Next.js, featuring live demos, code snippets, accessibility guides, and theming documentation for both styled and unstyled (Tailwind) modes. The library follows a consistent architecture: each component extends a shared ComponentBase that defines default props, CSS classes, and pass-through theming support. It includes a custom hooks library, SVG icon set, and utility modules. However, the project is no longer under active development; only security fixes are published, with all new features and bug fixes moving to the PrimeUI fork. This has led to a growing divergence and a backlog of unresolved issues. The codebase shows signs of technical drift such as aging dependencies (Next.js 12), deprecated patterns, and extensive duplication in documentation and style definitions.
react-sortable-tree is a React component library that provides a drag-and-drop sortable tree view for hierarchical data. It renders nested arrays of nodes with expand/collapse, virtualization via react-virtualized, search with highlighting, theming, and extensive callback hooks for move and visibility changes. The library is not actively maintained; the last release was in 2020, and the README explicitly disclaims maintenance. The codebase is well-architected with clean separation of concerns: pure tree-data utility functions (walk, map, insertNode, etc.) separated from React rendering, a DndManager class that wraps react-dnd, and a theming system. Despite its staleness, the core tree manipulation algorithms are high-quality and extractable for other projects. The library depends on outdated versions of React (16) and react-dnd (11), and uses react-virtualized instead of the more modern react-window.