# microsoft/sanddance

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/microsoft-sanddance).**

7,138 stars · 570 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/microsoft/SandDance
- Homepage: https://microsoft.github.io/SandDance
- awesome-repositories: https://awesome-repositories.com/repository/microsoft-sanddance.md

## Topics

`data-visualization` `deck-gl` `msr-vida` `powerbi` `vega` `visualization`

## Description

SandDance is a hardware-accelerated visualization library and web-based data explorer designed for the interactive analysis of large, non-aggregated datasets. It functions as an interactive data visualization tool that renders complex datasets and intricate visuals within a browser.

The project provides an embeddable data canvas consisting of web components and tags, allowing for the integration of full visualization interfaces and interactive charts into external web applications. It utilizes WebGL hardware acceleration to efficiently render large volumes of data as interactive graphics.

The system includes capabilities for client-side data processing, such as automatic schema and data type inference, and employs animated state transitions to maintain orientation during dataset filtering. These tools enable the creation of interactive visual representations for business reports and general data exploration.

## Tags

### Data & Databases

- [Visual Data Explorers](https://awesome-repositories.com/f/data-databases/big-data-processing/visual-data-explorers.md) — Provides a web-based tool for graphically analyzing and exploring massive datasets through interactive visualizations. ([source](https://microsoft.github.io/SandDance/docs/))
- [Client-Side Data Processing](https://awesome-repositories.com/f/data-databases/client-side-data-processing.md) — Performs data filtering and type inference directly in the browser to reduce server requests.
- [Dataset Filtering](https://awesome-repositories.com/f/data-databases/dataset-filtering.md) — Allows users to isolate or exclude specific data points to refine the current view. ([source](https://microsoft.github.io/SandDance/app/))
- [Interactive Data Charting](https://awesome-repositories.com/f/data-databases/interactive-data-charting.md) — Renders datasets as interactive charts featuring animated transitions for data presentation. ([source](https://cdn.jsdelivr.net/gh/microsoft/sanddance@main/README.md))
- [Schema Inference](https://awesome-repositories.com/f/data-databases/structured-data-schemas/schema-inference.md) — Automatically analyzes dataset columns to infer data types and map them to visual representations.

### Graphics & Multimedia

- [WebGL & GPU Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/webgl-gpu-rendering.md) — Utilizes WebGL and GPU hardware acceleration to render large datasets as interactive graphics in the browser.
- [WebGL Rendering](https://awesome-repositories.com/f/graphics-multimedia/webgl-rendering.md) — Uses WebGL hardware acceleration to efficiently render large volumes of data as interactive graphics within the browser. ([source](https://microsoft.github.io/SandDance/docs/))
- [Unit-Based Renderers](https://awesome-repositories.com/f/graphics-multimedia/data-unit-visualizations/unit-based-renderers.md) — Renders datasets as interactive units with animated transitions to help users understand complex data. ([source](https://microsoft.github.io/SandDance/docs/))

### Scientific & Mathematical Computing

- [GPU-Accelerated Plotting Libraries](https://awesome-repositories.com/f/scientific-mathematical-computing/gpu-accelerated-plotting-libraries.md) — Functions as a GPU-accelerated plotting library for rendering massive datasets with high performance.

### Software Engineering & Architecture

- [Tabular Data Type Inference](https://awesome-repositories.com/f/software-engineering-architecture/type-safe-data-handling/type-inference-engines/tabular-data-type-inference.md) — Analyzes columnar tabular data to automatically determine the data type of each field. ([source](https://microsoft.github.io/SandDance/docs/))
- [Large Dataset Optimizations](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/data-handling-throughput/large-dataset-optimizations.md) — Optimizes the rendering of complex datasets with many data points using hardware acceleration.
- [Visual State Transitions](https://awesome-repositories.com/f/software-engineering-architecture/state-transition-models/visual-state-transitions.md) — Implements animated transitions between visual states to maintain user orientation during data exploration.

### Web Development

- [Embeddable Data Canvases](https://awesome-repositories.com/f/web-development/embeddable-data-canvases.md) — Provides a set of web components and tags for integrating interactive data visualizations into external applications.
- [Web Components](https://awesome-repositories.com/f/web-development/web-components.md) — Encapsulates the visualization canvas into reusable web components for embedding in external applications.

### User Interface & Experience

- [Application Embedding](https://awesome-repositories.com/f/user-interface-experience/application-embedding.md) — Enables the integration of interactive data canvases into third-party web applications. ([source](https://cdn.jsdelivr.net/gh/microsoft/sanddance@main/README.md))
- [Data-to-Visual Synchronizations](https://awesome-repositories.com/f/user-interface-experience/bidirectional-canvas-synchronizations/data-to-visual-synchronizations.md) — Maintains a synchronized state between a data source and a visual layer for real-time exploration.
- [Embedded Data Visualizations](https://awesome-repositories.com/f/user-interface-experience/data-visualization-tools/data-visualization/interactive-presentation-tools/embedded-data-visualizations.md) — Builds and embeds interactive data dashboards and charts into external web applications.

### Part of an Awesome List

- [General Productivity Tools](https://awesome-repositories.com/f/awesome-lists/productivity/general-productivity-tools.md) — Interactive data visualization tool.
