veloxx 0.3.1

Veloxx: High-performance, lightweight Rust library for in-memory data processing and analytics. Features DataFrames, Series, advanced I/O (CSV, JSON, Parquet), machine learning (linear regression, K-means, logistic regression), time-series analysis, data visualization, parallel processing, and multi-platform bindings (Python, WebAssembly). Designed for minimal dependencies, optimal memory usage, and blazing speed - ideal for data science, analytics, and performance-critical applications.
Documentation

Veloxx: Lightweight Rust-Powered Data Processing & Analytics Library


๐Ÿš€ v0.3.1 Released! See CHANGELOG for details.

Veloxx is a high-performance, extremely lightweight in-memory data processing and analytics library in Rust, with bindings for Python, WebAssembly, and more. Designed for minimal dependencies, optimal memory usage, and blazing speed, it's ideal for data science, analytics, and any environment where every byte and cycle counts.


โœจ Project Links

๐Ÿงฉ Core Principles & Design Goals

  • ๐Ÿชถ Lightweight: Minimal dependencies and small binaries
  • โšก Performance First: SIMD, parallelism, cache-friendly data structures
  • ๐Ÿฆบ Safety & Reliability: Idiomatic Rust, memory safety, minimal unsafe code
  • ๐Ÿง‘โ€๐Ÿ’ป Ergonomics: Discoverable, chainable, and user-friendly API
  • ๐Ÿงฑ Composability: Modular, extensible, and feature-rich

๐Ÿšฉ Key Features

  • DataFrame and Series for fast, type-safe tabular data
  • ๐Ÿš€ In-memory analytics: filtering, joining, grouping, aggregation, stats
  • ๐Ÿ“ฆ Data ingestion: CSV, JSON, custom sources
  • ๐Ÿ’พ Advanced I/O: Parquet, async DB, streaming (features)
  • ๐Ÿงน Data cleaning & validation: schema checks, anomaly detection (features)
  • ๐ŸชŸ Window functions, time-series analytics (features)
  • ๐Ÿ“ˆ Charting & visualization (features)
  • ๐Ÿค– Machine learning: linear regression, preprocessing (features)
  • ๐Ÿ”„ Python & Wasm bindings

โšก Quick Start

Rust

[dependencies]

veloxx = "0.3.1"

use veloxx::dataframe::DataFrame;
use veloxx::series::Series;

let df = DataFrame::new_from_csv("data.csv")?;
let filtered = df.filter(&your_condition)?;
let grouped = df.group_by(vec!["category"]).agg(vec![("amount", "sum")])?;

Python

import veloxx

df = veloxx.PyDataFrame({"name": veloxx.PySeries("name", ["Alice", "Bob"])})
filtered = df.filter([...])

JavaScript/Wasm

const veloxx = require("veloxx");
const df = new veloxx.WasmDataFrame({name: ["Alice", "Bob"]});
const filtered = df.filter(...);

๐Ÿ› ๏ธ Feature Flags

Enable only what you need:

  • advanced_io โ€“ Parquet, databases, async
  • data_quality โ€“ Schema checks, anomaly detection
  • window_functions โ€“ Window analytics
  • visualization โ€“ Charting
  • ml โ€“ Machine learning
  • python โ€“ Python bindings
  • wasm โ€“ WebAssembly

๐Ÿ“š Documentation

๐Ÿง‘โ€๐Ÿ’ป Examples

Run ready-made examples:

cargo run --example basic_dataframe_operations

cargo run --example advanced_io --features advanced_io

# ... more in the examples/ folder

๐Ÿค Contributing

See CONTRIBUTING.md for guidelines.

๐Ÿ“ License

MIT License. See LICENSE.