$ show saulpw/visidata
VisiData is a terminal-based interactive spreadsheet application for exploring, cleaning, restructuring, and analyzing tabular data. It provides a real-time curses interface for loading data from diverse sources (CSV, JSON, Excel, SQL databases, APIs, etc.), applying transformations via hundreds of keyboard-driven commands (sort, filter, pivot, melt, unfurl, etc.), and saving results. The architecture centers around a Sheet/Column abstraction with a plugin system for loaders, features, and specialized applications (vgit for Git, vdsql for SQL). Key strengths include its extensible command system, dynamic type inference, and reversible operations via undo/redo. While the core is cohesive, the extensive optional dependencies and experimental features introduce some maintenance complexity.
The LLM identified 3 files worth highlighting for reuse:
Provides the Extensible base class with decorators for lazy properties, before/after/around advice, and init hooks. Enables safe monkey-patching and dynamic attribute addition, forming the core of VisiData's plugin system. Zero internal dependencies (only standard library), making it easily reusable in other projects.
Implements Bezier curve calculations for smooth graphics rendering. Used in the canvas for drawing curves and paths. Self-contained with only standard library dependencies (math), demonstrating encapsulation of a complex mathematical algorithm in a reusable utility.
Defines core data types and constants used throughout VisiData (e.g., basic types, special values). Contains only basic type definitions and constants without internal dependencies, serving as a reusable foundation for type systems in other applications.