densa-rs/densa
The platform
Every core crate, the examples and the trading demo, with continuous integration on three operating systems.
Open01 — Get started
git clone https://github.com/densa-rs/densa
cd densa
cargo run --release -p densa-widgets --example monitor # a live fleet: grid and chart
cargo run --release -p densa-widgets --example gallery # the standard widgets
[dependencies]
densa = "0.1" # every library, as densa::data, densa::widgets, ...
# or only the crates you use:
# densa-data = "0.1" live Arrow tables, no GPU or window
# densa-widgets = "0.1"
# densa-window = "0.1"
git clone https://github.com/densa-rs/densa-connectors
cd densa-connectors
cargo run --release -p file-viewer -- orders.parquet # or a .csv, or --sample
# The API documentation is on docs.rs: https://docs.rs/densa
# or build it from a clone of the repository:
cargo doc --workspace --no-deps --open
02 — Examples
Each item is an example in a repository: clone it and run the command.
1,000 simulated hosts in a live grid, slowest first; click one to chart its latency and traffic from a live table of samples.
cargo run --release -p densa-widgets --example monitor100,000 rows upserted by key, a thousand every frame: click a title to sort, type to filter, and a selected row stays selected as it moves.
cargo run --release -p densa-widgets --example live_tableOne-minute candles with a moving average over volume: scroll to zoom around the pointer, drag to pan, double-click to follow.
cargo run --release -p densa-widgets --example chartClick one of 200 live instruments and the chart shows its trades: a live view filtered by symbol and sorted by time.
cargo run --release -p densa-widgets --example linkedA million rows read on a background thread into the live grid, which draws and sorts while the file loads.
cargo run --release -p file-viewer -- --sample500 sensors streamed as JSON from a local server into the live grid, the latest row of each, reconnecting if the server goes away.
cargo run --release -p stream-viewer -- --demoDataFusion runs SQL typed into a text box over a million web requests; the result fills the grid as it is computed.
cargo run --release -p sql-viewer -- --demoRequests stream into a live table; every second DataFusion queries a snapshot of it, and the grid updates its rows in place.
cargo run --release -p sql-viewer -- --liveParquet and CSV files and WebSocket streams in tabs that keep up, live SQL over all of them, a chart of the result, and a workspace kept between runs.
densa-studio --sampleA local Flight service answers a query with a million web requests in four endpoints; the grid fills as they arrive.
cargo run --release -p flight-viewer -- --demoA worker thread ticks thousands of instruments; the screen shows the newest snapshot every frame, with changed cells flashing.
cargo run --release -p trading-demoRecord batches shown as they are, never copied, with new batches appended while the table is on screen.
cargo run --release -p densa-arrow --example table -- --livePanels in tab groups around a live watchlist: drag tabs to join or split groups, click a column title to sort. The arrangement is saved to the file you name and restored next time.
cargo run --release -p densa-widgets --example dock -- --layout dock.txtToolbars, filters, buttons, scrolling lists and splitters, laid out with flexbox, with Tab between controls.
cargo run --release -p densa-widgets --example galleryShaped, wrapped, bidirectional text: click, drag and keyboard selection, and input-method composition shown in place.
cargo run --release -p densa-paragraph --example editor03 — Repositories
densa-rs/densa
Every core crate, the examples and the trading demo, with continuous integration on three operating systems.
Opendensa-rs/densa-connectors
Connectors with large dependency trees of their own: CSV and Parquet files, WebSocket streams, Arrow Flight and SQL with DataFusion today; DuckDB and Polars next.
Opendensa-rs/.github
How to contribute, report a vulnerability, and the code of conduct every space follows.
Open