wasm-compatibility

Analyze Marimo notebook dependencies and report WASM compatibility for Pyodide environments.

1|Updated Apr 20, 2026
One-click install
npx skills add https://github.com/IndianBoy42/dot-opencode --skill wasm-compatibility-indianboy42
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: wasm-compatibility
Source: https://github.com/IndianBoy42/dot-opencode/tree/main/skills/wasm-compatibility
Command: npx skills add https://github.com/IndianBoy42/dot-opencode --skill wasm-compatibility-indianboy42

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill helps developers assess whether a Marimo notebook can run in a WebAssembly (WASM) environment by identifying incompatible dependencies and runtime patterns, preventing runtime errors in browser-based execution.

Core Features & Use Cases

  • Dependency analysis: parses the top-of-notebook PEP 723 metadata and source imports to enumerate dependencies.
  • WASM compatibility assessment: checks against Pyodide built-ins and common pure-Python packages to surface compatibility issues.
  • Report and guidance: provides a clear compatibility report with actionable remediation steps for any detected issues.
  • Use Case: A data scientist wants to validate a notebook before sharing in a browser-based playground, ensuring it won’t fail due to unsupported packages.

Quick Start

Run the wasm-compatibility checker on a target notebook to generate a compatibility report.

Frequently Asked Questions about wasm-compatibility

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I check if a Marimo notebook is WASM compatible?

To check Marimo notebook WASM compatibility, analyze its Python dependencies by parsing import statements and PEP 723 metadata against Pyodide built-ins to detect unsupported native extensions and report incompatibilities.

What makes a Python package incompatible with Pyodide in a browser notebook?

A Python package is incompatible with Pyodide in a browser notebook if it requires native extensions or compiled code unavailable in the WebAssembly environment, which dependency analysis identifies by checking against Pyodide built-ins.

How do I assess Pyodide support for notebook imports before browser deployment?

Assess Pyodide support for notebook imports by mapping dependencies from PEP 723 metadata and source code against Pyodide built-ins and pure-Python packages to generate a structured compatibility report.

Does stdlib usage affect WASM compatibility in Pyodide notebooks?

Stdlib usage in Pyodide notebooks is generally WASM compatible, and compatibility assessment detects stdlib imports alongside Pyodide compatibility and potential native extensions to provide a complete structured report.

Can I detect native extension dependencies in a Marimo notebook before running it?

You can detect native extension dependencies in a Marimo notebook by analyzing its import statements and PEP 723 metadata to identify packages that may fail in a Pyodide-based browser environment.

Why does my Marimo notebook fail when running in a browser environment?

Your Marimo notebook fails in a browser environment because it likely imports dependencies requiring native extensions unsupported by Pyodide, which WASM compatibility analysis detects by mapping imports against Pyodide built-ins.