DataPrism CDN

Welcome to the DataPrism CDN! This is a high-performance browser-based analytics engine powered by WebAssembly and DuckDB.

✅ CDN Status: Active and Functional

Available Assets

Core Bundle (ES Module)

https://srnarasim.github.io/DataPrism/dataprism.min.js

Core DataPrism engine with plugin framework (~119KB)

UMD Bundle

https://srnarasim.github.io/DataPrism/dataprism.umd.js

Universal Module Definition build for broader compatibility (~92KB)

Out-of-Box Plugins Bundle

https://srnarasim.github.io/DataPrism/dataprism-plugins.min.js

Production-ready plugins: Charts, CSV Import, Clustering, Performance Monitor (~232KB)

DuckDB Workers

https://srnarasim.github.io/DataPrism/assets/duckdb-browser-*.worker.js

DuckDB worker scripts for browser compatibility (~3MB total)

Configuration

https://srnarasim.github.io/DataPrism/duckdb-config.json

DuckDB configuration for hybrid deployment

Manifest

https://srnarasim.github.io/DataPrism/manifest.json

Asset manifest with integrity hashes and metadata

Usage Examples

ES Module (Modern Browsers)

<script type="module"> import { DataPrismEngine } from "https://srnarasim.github.io/DataPrism/dataprism.min.js"; const engine = new DataPrismEngine(); await engine.initialize(); const result = await engine.query("SELECT 1 as hello"); console.log(result); </script>

Out-of-Box Plugins Usage

<script type="module"> import { DataPrismEngine } from "https://srnarasim.github.io/DataPrism/dataprism.min.js"; import { createVisualizationPlugin, createIntegrationPlugin, createProcessingPlugin, createUtilityPlugin } from "https://srnarasim.github.io/DataPrism/dataprism-plugins.min.js"; // Initialize engine const engine = new DataPrismEngine(); await engine.initialize(); // Use ready-made plugins const chartsPlugin = await createVisualizationPlugin("observable-charts"); const csvPlugin = await createIntegrationPlugin("csv-importer"); const clusteringPlugin = await createProcessingPlugin("semantic-clustering"); const monitorPlugin = await createUtilityPlugin("performance-monitor"); // Import and visualize data const data = await csvPlugin.execute("import", { file: myFile }); await chartsPlugin.render(container, data, { type: "bar" }); </script>

Custom Plugin Development

<script type="module"> import { DataPrismEngine, DataPrismPluginSystem, BasePlugin } from "https://srnarasim.github.io/DataPrism/dataprism.min.js"; // Initialize engine and plugin system const engine = new DataPrismEngine(); const pluginSystem = await DataPrismPluginSystem.create(); // Load a custom plugin class MyPlugin extends BasePlugin { getCapabilities() { return ['data-processing']; } async execute(operation, params) { // Your custom plugin logic return processedData; } } // Register and use the plugin await pluginSystem.register(new MyPlugin(manifest)); await pluginSystem.activate("my-plugin"); </script>

UMD (Legacy Support)

<script src="https://srnarasim.github.io/DataPrism/dataprism.umd.js"></script> <script> const engine = new DataPrism.DataPrismEngine(); engine.initialize().then(() => { return engine.query("SELECT 1 as hello"); }).then(result => { console.log(result); }); </script>

UMD with Plugin System

<script src="https://srnarasim.github.io/DataPrism/dataprism.umd.js"></script> <script> const { DataPrismEngine, DataPrismPluginSystem, BasePlugin } = DataPrism; // Create custom plugin with UMD class MyUMDPlugin extends BasePlugin { getCapabilities() { return ['data-processing']; } async execute(operation, params) { return { processed: true }; } } // Use plugin system DataPrismPluginSystem.create().then(pluginSystem => { // Plugin system ready console.log('Plugin system initialized'); }); </script>

Hybrid DuckDB Architecture

DataPrism uses an intelligent hybrid loading strategy:

Plugin System

DataPrism includes a comprehensive plugin system with the following interfaces available via CDN:

Core Plugin Classes

DataPrismPluginSystem, PluginManager, BasePlugin

Main plugin system classes for creating and managing plugins

Plugin Registry

PluginRegistry, PluginLoader, PluginUtils

Plugin discovery, loading, and validation utilities

Security & Resources

SecurityManager, ResourceManager, PluginSandbox

Security controls and resource management for plugins

Communication

EventBus, EventBusFactory

Event-driven communication system for plugins

Browser Support

Security

All assets include subresource integrity (SRI) hashes. Check the manifest.json for integrity values.