Skip to content

WebAssembly support (browser + edge) #25

@ibrahimcesar

Description

@ibrahimcesar

Description

Compile telemetry-kit to WebAssembly for browser and edge runtime support.

Use Cases

  • Browser-based CLI tools (e.g., WebContainers)
  • Edge functions (Cloudflare Workers, Deno Deploy)
  • In-browser IDEs
  • Electron apps

Features

  • wasm32-unknown-unknown target
  • Browser-compatible storage (IndexedDB)
  • Fetch API for sync
  • Small bundle size (< 100KB gzipped)

Technical Challenges

  • No filesystem access (use IndexedDB)
  • No native SQLite (use sql.js or IndexedDB)
  • CORS considerations for sync

Example Usage

```javascript
import init, { TelemetryKit } from '@telemetry-kit/wasm';

await init();
const telemetry = new TelemetryKit({ serviceName: 'browser-app' });
```

Acceptance Criteria

  • Published as npm package
  • Works in modern browsers
  • Works in Cloudflare Workers
  • Documentation for browser usage

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is neededtype: featureNew feature or enhancement

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions