nodl
v2.2.1Now available on macOS, Windows & Linux

A scratchpad
for TypeScript.

/ˈnuː.dəl/rhymes with noodle

Instant inline output. Full TypeScript. Real npm packages.Native desktop speed — no browser tab attached.

to run·Sto save
nodlv2.2.1
type User = { id: number; name: string }
 
const users: User[] = [
{ id: 1, name: 'alice' },
{ id: 2, name: 'bob' },
{ id: 3, name: 'carol' }
]
 
users.length
users[0]
users.map(u => u.name)
 
users.filter(u => u.id % 2)
 
// Toggle Auto to re-run as you type.
Output11ms
 
 
 
 
 
 
 
 
3
Object {2}{ id: 1, name: "alice" }
Array (3)["alice", "bob", "carol"]
 
Array (2)[{ id: 1, name: "alice" }, { id: 3, name: "carol" }]
 
 

Features

Built for thinking out loud, in code.

Every feature designed to keep the loop tight: write, run, see — over and over.

Instant inline output

See the result of every line right next to where you wrote it.

TypeScript, zero config

Strip types, run code. No tsconfig. No build step. Just write.

Real npm packages

Install from the sidebar. Import like any project. Including types.

Multi-tab scratchpads

Keep experiments separate. Switch with P. Auto-saved.

Keyboard-first

to run·Sto save·Pfor tabs

Native desktop speed

No browser tab. No sandbox tax. Electron + Node, all yours.

How it works

Three keystrokes from idea to answer.

  1. 01const users = [...]

    Write code

    Open a tab, drop in a snippet. Full TypeScript. Familiar Monaco editor.

  2. 02

    Hit run

    Code transpiles, executes in a forked Node worker, and streams output back.

  3. 03// → 3

    See it inline

    Each value shows up next to the line that produced it. Async, errors, console.log — all aligned.

Download

Start scratching.

Free, open-source, and a single-click install. Be running code in under a minute.

Download nodl

macOS · Windows · Linux

Or browse all releases on GitHub