Tree — Run Code Instantly
One extension. Eight languages. Zero setup.
Tree lets you write and run C, C++, Python, JavaScript, TypeScript, Java, Go, and Rust directly in VS Code — no compiler installation, no PATH configuration, no environment setup. Just install Tree and start coding.
Why Tree?
Every other extension requires you to install compilers yourself:
- Microsoft's C/C++ extension says "You will need to install a C++ compiler yourself"
- Code Runner requires GCC, Python, Node.js, and JDK to already be on your system
- Java extensions require you to set JAVA_HOME and point to a JDK
Tree does all of that for you — automatically.
How it works
Tree ships as a tiny extension (under 25 KB). The first time you run a file in a given language, Tree silently downloads the required compiler or runtime, extracts it to a private folder, and runs your code. Your system is completely untouched — no PATH changes, no admin rights needed.
After the first run, everything works fully offline — forever.
| Language |
Runtime |
One-time download |
| C |
GCC 14.2 (MinGW-w64) |
~52 MB |
| C++ |
G++ 14.2 (MinGW-w64) |
~52 MB (shared with C) |
| Python |
Python 3.12.7 |
~10 MB |
| JavaScript |
Node.js 22.9 |
~30 MB |
| TypeScript |
Node.js 22.9 |
~30 MB (shared with JS) |
| Java |
OpenJDK 21 |
~200 MB |
| Go |
Go 1.23.1 |
~70 MB |
| Rust |
Rust 1.81.0 |
~250 MB |
Each runtime is downloaded only when you first run that language. If you only write Python, you never download GCC.
Usage
- Open any
.c, .cpp, .py, .js, .ts, .java, .go, or .rs file
- Press F5 or click ▶ Run in the status bar
- Program runs in an integrated terminal — type input naturally when prompted
- Press Shift+F5 or click ⏹ Stop to kill a running program
Features
- ✅ One-click run — F5 or ▶ Run button
- ✅ Supports C, C++, Python, JavaScript, TypeScript, Java, Go, Rust
- ✅ Real terminal — type input freely at any point during execution
- ✅ Zero setup — no compiler or runtime installation needed
- ✅ No PATH configuration required
- ✅ Fully offline after first-time runtime download
- ✅ Execution time shown after every run
- ✅ Run button shows spinner while running, resets when done
- ✅ Stop running program anytime (Shift+F5)
- ✅ Auto-detects language from file type
- ✅ matplotlib graphs open automatically inside VS Code
- ✅ Missing Python packages auto-detected and installed with one click
- ✅
Tree: Install Python Package command for manual pip installs
- ✅ Compiled binaries (.exe, .class) cleaned up after each run
- ✅ Download progress shown with speed and ETA
- ✅ TypeScript runs via Node.js 22 built-in type stripping — no tsc needed
- ✅ Windows support (Linux/macOS coming in a future release)
Python & matplotlib
Tree includes full pip support. When your code imports a missing package, Tree detects it and offers to install it automatically — then re-runs your file.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y)
plt.title("My Graph")
plt.show() # opens as an image inside VS Code automatically
plt.show() is intercepted — the chart saves as PNG and opens beside your editor. No popup windows needed.
Manual install: Ctrl+Shift+P → Tree: Install Python Package → type package name
Programs run in a real terminal. When your program asks for input, just type and press Enter — exactly like running in a normal terminal.
// This just works — type when prompted
scanf("%d", &n);
# This just works — type when prompted
name = input("Enter your name: ")
Requirements
- VS Code 1.125.0 or higher
- Windows (Linux/macOS support coming soon)
- Internet connection on first run of each language (for runtime download)
- No other requirements
Commands
| Command |
Shortcut |
Description |
| Tree: Run File |
F5 |
Run the current file |
| Tree: Stop Program |
Shift+F5 |
Stop the running program |
| Tree: Install Python Package |
— |
Install a pip package into Tree's private Python |
Release Notes
0.2.0
- Added Go and Rust support
- Switched to real terminal — interactive input works naturally
- Execution time shown after every run
- matplotlib plots auto-open beside editor
- Download progress shown in output panel with speed and ETA
- Stop button now correctly kills the running program
- TypeScript warning suppressed
0.1.0
Initial release — C, C++, Python, JavaScript, TypeScript, Java with auto runtime download, matplotlib support, auto pip install, and fully offline operation.