Perspective is a columnar data analytics engine and high-performance visualization component powered by WebAssembly. It provides a system for analyzing and visualizing large or streaming datasets through interactive data grids and charts, utilizing a compiled binary to achieve near-native performance within the browser.
The project distinguishes itself through a WebSocket-based data streaming interface and deep Apache Arrow integration, which minimize memory overhead when synchronizing tables between servers and clients. It acts as a remote query proxy capable of translating visualization configurations into native queries for external databases such as ClickHouse and DuckDB.
The engine covers a broad range of analysis capabilities, including group-by aggregations, dataset joining, pivoting, and row filtering. It supports complex data management through incremental updates, primary key handling, and reactive view propagation that automatically updates visualizations as source data changes.
The system can be deployed as a browser-only execution environment, a server-replicated setup, or as embeddable interactive widgets within notebook environments like JupyterLab.