nanoGo nanoGo Go playground · WebAssembly
🐙 GitHub
⚙️ Options
Loading WebAssembly...
IDE workspace 1 file · main.go
Inputs & resultsStructured data

Pass named values to your program with host.Input. Collect output with host.Emit. Inputs stay in this tab and are not included in share links.

Applies to Run and Project. Steps measure guest work, not elapsed time or memory. Stop terminates the worker.

No execution yet
Run a program to see its results here.
Diagnostics
🎨 Canvas Output Visual
📋 Console Output Text
Welcome to nanoGo! Select an example from the sidebar to get started! 🚀
🌐 Template Output HTML

HTML template outputs will appear here when running template demos.

🧭 Go Execution Lab Mermaid
Static graph · click a function to navigate
Not running

Analyze the current code to build its Mermaid call graph.

✨ nanoGo AI Local config
Connection & privacy

nanoGo sends nothing until you ask. This browser calls the configured OpenAI-compatible endpoint directly; normal CORS rules apply.

Ask for an explanation, a test, a refactor, or a focused patch. Code blocks can be applied to the editor after review.

🔎 Symbol details Editor
Inspect code in place

Click a variable or function in the editor. Functions show callers and callees; variables show the last value observed during a run.

🔬 Execution Inspector Details
–total time
–interp time
–steps
–steps/ms
📁 SDK / Workspace
Multi-file VFS, go.mod and package graph

The active file runs directly. Add a second .go file to enable module-aware execution.

🌳 AST
Click a node to jump to its source line.
📞 Functions
Who calls whom — click a function, a call, or a caller to jump to it.
📊 Benchmark
Runs the whole program N× on a fresh interpreter; output is suppressed.
🧭 Trace
Calls, goroutines, capability checks — timeline of the last traced run.
🔥 Heatmap
Darker = executed more often. Benchmark accumulates hits across all its iterations.