Skills Development WebContainer Diagnostic Bundle

WebContainer Diagnostic Bundle

v20260423
stackblitz-debug-bundle
This bundle collects comprehensive diagnostic information about the WebContainer environment. It checks the boot state, file system integrity, running process list, and modern browser support (e.g., SharedArrayBuffer, cross-origin isolation). Essential for developers integrating with StackBlitz SDK or WebContainers to troubleshoot complex development issues.
Get Skill
424 downloads
Overview

StackBlitz Debug Bundle

Overview

Collect WebContainer diagnostic info: boot state, file system, process list.

Instructions

Step 1: Check Boot State

async function diagnoseWebContainer(wc: WebContainer) {
  const report: Record<string, any> = {};

  // File system check
  try {
    const entries = await wc.fs.readdir('/');
    report.filesystem = { status: 'ok', rootEntries: entries.length };
  } catch (e: any) {
    report.filesystem = { status: 'error', message: e.message };
  }

  // Node.js check
  try {
    const proc = await wc.spawn('node', ['-e', 'console.log(JSON.stringify({version: process.version, arch: process.arch}))']);
    let output = '';
    proc.output.pipeTo(new WritableStream({ write(data) { output += data; } }));
    await proc.exit;
    report.node = JSON.parse(output);
  } catch (e: any) {
    report.node = { status: 'error', message: e.message };
  }

  // Memory check
  try {
    const proc = await wc.spawn('node', ['-e', 'console.log(JSON.stringify(process.memoryUsage()))']);
    let output = '';
    proc.output.pipeTo(new WritableStream({ write(data) { output += data; } }));
    await proc.exit;
    report.memory = JSON.parse(output);
  } catch { report.memory = 'unavailable'; }

  return report;
}

Step 2: Check Browser Support

function checkBrowserSupport() {
  return {
    sharedArrayBuffer: typeof SharedArrayBuffer !== 'undefined',
    crossOriginIsolated: window.crossOriginIsolated,
    serviceWorker: 'serviceWorker' in navigator,
    userAgent: navigator.userAgent,
  };
}

Error Handling

Check Expected Failed Action
SharedArrayBuffer defined Add COOP/COEP headers
crossOriginIsolated true Check all headers present
Node.js version v18+ WebContainer ships its own
Root FS entries > 0 Re-mount files

Resources

Next Steps

For resource limits, see stackblitz-rate-limits.

Info
Category Development
Name stackblitz-debug-bundle
Version v20260423
Size 2.46KB
Updated At 2026-04-28
Language