Expand description
Helios Core - High-performance visualization engine
This crate provides the core visualization engine for Helios, including:
- Canvas2D Rendering: Universal browser support with TDD implementation
- WebGPU Acceleration: High-performance GPU rendering (816+ MB/s throughput)
- WebAssembly Integration: Rust-powered data processing and function export
- Data Processing Pipeline: Polars integration with efficient data handling
- Chart Specification System: Compile-time validation and type safety
- Performance Optimization: Sub-millisecond rendering and adaptive quality
- Test-Driven Development: Complete TDD methodology with 100% test coverage
§Demo Suite
Experience Helios in action with our comprehensive demo suite:
python3 demo-server.py
# Open http://localhost:8080 in your browser§Available Demos
- Canvas2D TDD Demo (
/) - Test-Driven Development methodology - WebGPU Demo (
/webgpu) - GPU acceleration testing - WebGPU Charts Demo (
/webgpu-charts) - Visual GPU-rendered charts - WASM Example (
/example) - Rust-WebAssembly integration
§Performance Highlights
- Canvas2D: 100K points in <3ms render time
- WebGPU: 816+ MB/s throughput, 1M points in 77ms
- WASM: <1ms function execution
- Interactive: Sub-millisecond hover detection
Re-exports§
pub use rendering as render;pub use chart::BarWidth;pub use chart::ChartConfig;pub use chart::ChartSpec;pub use chart::ChartSpecBuilder;pub use chart::DataReference;pub use chart::Encoding;pub use chart::Interpolation;pub use chart::MarkType;pub use chart_config::ChartRenderResult;pub use chart_config::RenderResult as ChartConfigRenderResult;pub use chart_config::WebGpuRenderResult;pub use data_pipeline::DataPipeline;pub use data_pipeline::GpuBuffers;pub use data_pipeline::PipelineError;pub use data_pipeline::PipelineResult;pub use helios_chart::create_helios_chart;pub use helios_chart::HeliosChart;pub use helios_chart::HeliosChartProps;pub use renderer::Canvas2DRenderer;pub use renderer::RenderStatus;pub use renderer::Renderer as ChartRenderer;pub use renderer::RendererBackend;pub use renderer::WebGl2Renderer;pub use renderer::WebGpuRenderer;pub use accessibility::AltTextGenerator;pub use accessibility::AccessibilityError;pub use accessibility::AccessibilityConfig;pub use accessibility::AlternativeFormats;pub use accessibility::KeyboardManager;pub use accessibility::ScreenReaderManager;pub use accessibility::WCAGChecker;pub use accessibility::WCAGLevel;pub use accessibility::ComplianceReport;pub use accessibility::PerformanceConfig as AccessibilityPerformanceConfig;pub use accessibility::PerformanceMonitor as AccessibilityPerformanceMonitor;pub use advanced_analytics::AnalyticsError;pub use advanced_analytics::MLModel;pub use advanced_analytics::MLPipeline;pub use advanced_analytics::StatisticalAnalyzer;pub use advanced_analytics::TimeSeriesAnalysis;pub use advanced_analytics::CorrelationAnalysis;pub use advanced_analytics::DataPoint;pub use advanced_analytics::DataSeries;pub use advanced_analytics::ModelInfo;pub use advanced_analytics::ModelType;pub use interactivity::Viewport as InteractivityViewport;pub use interactivity::Tooltip;pub use interactivity::TooltipStyle as InteractivityTooltipStyle;pub use interactivity::TooltipData as InteractivityTooltipData;pub use interactivity::BrushSelection;pub use interactivity::CrossFilter;pub use interactivity::FilterEvent;pub use interactivity::DataPoint as InteractivityDataPoint;pub use interactivity::InteractiveChart;pub use performance_optimizations::VirtualScroller;pub use performance_optimizations::DataSampler;pub use performance_optimizations::WebGLRenderer;pub use performance_optimizations::WebGPURenderer;pub use performance_optimizations::Buffer as PerformanceBuffer;pub use performance_optimizations::RenderBatch;pub use performance_optimizations::MemoryPool;pub use performance_optimizations::PerformanceMonitor as PerformanceOptimizationsMonitor;pub use performance_optimizations::PerformanceMetric as PerformanceOptimizationsMetric;pub use performance_optimizations::PerformanceReport;pub use graph_features::GraphNode;pub use graph_features::GraphEdge;pub use graph_features::CentralityMeasures;pub use graph_features::NetworkMetrics;pub use graph_features::VisualizationMetrics;pub use graph_features::ForceDirectedLayout;pub use graph_features::GraphAlgorithms;pub use graph_features::GraphClusterer;pub use graph_features::ClusteringAlgorithm as GraphClusteringAlgorithm;pub use graph_features::NetworkAnalyzer;pub use graph_features::GraphManipulator;pub use data_sources::DataSourceManager;pub use data_sources::DataSourceFactory;pub use data_sources::DataSourceConfigBuilder;pub use data_sources::DataSource as DataSourceTrait;pub use data_sources::Connection;pub use data_sources::Transaction;pub use data_sources::DataStream;pub use data_sources::PostgresAdapter;pub use data_sources::ClickHouseAdapter;pub use data_sources::ConnectionConfig;pub use data_sources::Credentials;pub use data_sources::TableInfo;pub use data_sources::ColumnInfo;pub use data_sources::QueryResult;pub use data_sources::DataSourceStats;pub use dev_tools::DevToolsError;pub use dev_tools::ProfileData;pub use dev_tools::CodeTemplate;pub use dev_tools::LiveReloadConfig;pub use dev_tools::HeliosDev;pub use dev_tools::DevToolsConfig;pub use dev_tools::PerformanceProfiler as DevToolsPerformanceProfiler;pub use dev_tools::ProfileScope;pub use dev_tools::CodeGenerator;pub use dev_tools::CodeLinter;pub use dev_tools::LintRule;pub use dev_tools::LintResult;pub use smooth_animations::EasingFunctions;pub use smooth_animations::TweenAnimation;pub use smooth_animations::EasingType;pub use smooth_animations::StateTransition;pub use smooth_animations::AnimationOrchestrator;pub use smooth_animations::AnimationRenderer;pub use smooth_animations::AnimationBatch;pub use smooth_animations::Color as AnimationColor;pub use smooth_animations::Point2D as AnimationPoint2D;pub use smooth_animations::Size as AnimationSize;pub use smooth_animations::PerformanceMetrics as AnimationPerformanceMetrics;pub use ml_intelligence::TimeSeriesPoint;pub use ml_intelligence::ForecastResult;pub use ml_intelligence::ChartRecommendation;pub use ml_intelligence::MLForecaster;pub use ml_intelligence::ChartRecommendationEngine;pub use ml_intelligence::DataAnalysis as MLDataAnalysis;pub use ml_intelligence::DataType as MLDataType;pub use ml_intelligence::TrendType as MLTrendType;pub use ml_intelligence::DataAnalyzer as MLDataAnalyzer;pub use ml_intelligence::MLPerformanceMonitor;pub use ml_intelligence::MLPerformanceStats;pub use performance_advanced::PerformanceOptimizer;pub use performance_advanced::PerformanceOptimizerStats;pub use performance_advanced::PerformanceBenchmark;pub use performance_advanced::BenchmarkSummary;pub use performance_advanced::RuntimePoolStats;pub use performance_advanced::MemoryPoolStats;pub use plugin_system::ChartPlugin;pub use plugin_system::DataSourcePlugin;pub use plugin_system::ExportPlugin;pub use plugin_system::MLPlugin;pub use plugin_system::PluginError;pub use plugin_system::PluginManager;pub use plugin_system::PluginMetadata;pub use plugin_system::RenderResult as PluginRenderResult;pub use plugin_system::ThemePlugin;pub use plugin_system::TransformPlugin;pub use gpu_accelerator::GpuMemoryUsage;pub use gpu_accelerator::BufferPoolStats;pub use gpu_accelerator::PerformanceMetrics as GpuPerformanceMetrics;pub use gpu_accelerator::GpuBuffer;pub use gpu_accelerator::OptimizedGpuBuffer;pub use gpu_accelerator::OptimizedGpuRenderer;pub use gpu_accelerator::Point2D as GpuPoint2D;pub use gpu_accelerator::GpuAccelerationEngine;pub use intelligence::ClusterAnalyzer;pub use intelligence::ClusteringAlgorithm as IntelligenceClusteringAlgorithm;pub use intelligence::ClusteringResults;pub use intelligence::ClusterStats;pub use intelligence::ClusteringConfig as IntelligenceClusteringConfig;pub use intelligence::AnomalyDetector;pub use intelligence::AnomalyMethod;pub use intelligence::DataStatistics;pub use intelligence::AnomalyPoint;pub use intelligence::AnomalyReason;pub use intelligence::AnomalyResults;pub use intelligence::TimeSeriesForecaster;pub use intelligence::TrendAnalysis as IntelligenceTrendAnalysis;pub use intelligence::TrendType as IntelligenceTrendType;pub use intelligence::TrendDirection as IntelligenceTrendDirection;pub use intelligence::SeasonalityAnalysis;pub use intelligence::TimeSeriesDecomposition;pub use intelligence::MLPipeline as IntelligenceMLPipeline;pub use intelligence::ModelType as IntelligenceModelType;pub use intelligence::MLConfig;pub use intelligence::MLResults;pub use intelligence::MLError;pub use advanced_chart_types::*;pub use debugger::*;pub use export_system::*;pub use styling::*;pub use advanced_memory::*;pub use cross_browser::*;pub use dev_server::*;pub use gpu::*;pub use interactions::*;pub use nl_processor::*;pub use profiler::*;pub use render::*;pub use utils::*;pub use wasm_optimizer::*;
Modules§
- accessibility
- Accessibility Module
- advanced_
analytics - Advanced Analytics Engine
- advanced_
chart_ types - Advanced Chart Types for leptos-helios
- advanced_
charts - Advanced Chart Types
- advanced_
memory - Advanced Memory Management
- canvas2d_
renderer - Canvas2D Renderer Implementation
- canvas_
surface - Canvas Surface Integration
- chart
- Chart Module
- chart_
config - Chart Configuration Types Configuration structures for different chart types
- cross_
browser - Cross-Browser Compatibility
- data_
pipeline - Data Pipeline for processing and optimizing chart data
- data_
processing - Enhanced data processing implementation for TDD REFACTOR phase This provides robust, production-ready data processing capabilities
- data_
sources - Data Source Adapters
- debugger
- Interactive Debugger
- dev_
server - Development Server with Hot Reload
- dev_
tools - Developer Experience Tools
- export_
system - Export System
- gpu
- GPU utilities and compute shaders
- gpu_
accelerator - GPU Acceleration Optimization
- graph_
features - Graph Features Module
- headless_
renderer - Headless Rendering API
- helios_
chart - intelligence
- Intelligence and Machine Learning Module
- interactions
- User Interaction System Handles pan, zoom, hover, click, and other user interactions with charts
- interactivity
- Core Interactivity Features for leptos-helios
- line_
chart_ renderer - Line Chart Renderer
- ml_
intelligence - ML Intelligence Module for Helios
- nl_
processor - Natural Language Query Processing
- performance_
advanced - Performance Optimization Module
- performance_
optimizations - Performance Optimizations for leptos-helios
- plugin_
system - Plugin System Architecture
- production
- Production Readiness Module
- profiler
- Performance Profiler
- renderer
- Chart Renderer Implementation WebGPU/WebGL2/Canvas2D renderer implementations for chart rendering
- rendering
- Enhanced rendering engine for TDD REFACTOR phase This provides robust, production-ready WebGPU rendering capabilities
- security
- Enterprise Security & Authentication
- smooth_
animations - Smooth Animations and Transitions for leptos-helios
- streaming
- Streaming Data System Real-time data streaming and updates for dynamic visualizations
- styling
- Styling utilities for leptos-helios
- utils
- Utility functions and helpers
- wasm_
optimizer - WASM Bundle Size Optimization
- webgpu_
real - Real WebGPU Implementation
- webgpu_
renderer - WebGPU renderer implementation for Helios visualization library
Macros§
- profile_
operation - Macro for easy performance profiling
Structs§
Enums§
- Helios
Error - Core error types for Helios
Functions§
- build_
info - Get build information
- init
- Initialize Helios for the current platform
- version
- Get the current Helios version