Expand description
WASM Serve Module - Browser-based data serving and sharing
This module provides functionality for serving datasets, courses, and other content types through WASM-based browser applications with optional P2P sharing.
§Design Principles
- Browser-First - Full functionality in WASM without server dependencies
- Plugin Architecture - Extensible type system for arbitrary content
- Zero-Server Option - P2P sharing via WebRTC
- Schema-Driven - YAML/JSON configuration for type definitions
§Example
ⓘ
use alimentar::serve::{PluginRegistry, ContentTypeId};
let registry = PluginRegistry::new();
let plugin = registry.get(&ContentTypeId::dataset()).unwrap();Structs§
- Content
Metadata - Metadata associated with serveable content
- Content
Schema - Schema definition for content validation and UI generation
- Content
Type Id - Unique identifier for content types
- Dataset
Plugin - Dataset plugin for Arrow/Parquet datasets
- Field
Definition - Field definition with type and constraints
- Plugin
Registry - Registry for content plugins
- RawSource
- Raw source data container
- RawSource
Config - Configuration for raw source parsing
- Render
Hints - Rendering hints for trueno-viz integration
- Validation
Report - Validation report for content integrity checks
- Validator
Definition - Validator definition for custom validation logic
Enums§
- Constraint
- Constraint definition for field validation
- Field
Type - Field type enumeration
- Source
Type - Source type for raw data
Traits§
- Content
Plugin - Plugin interface for extending alimentar with new content types
- Serveable
Content - Trait for any content that can be served via WASM