Rust-powered analysis

Code, shapedon the anvil

An in-browser playground on the Monaco editor. Type code and a Rust backend tokenizes it live — metrics, diagnostics, and formatting.

Scroll

Playground

Type code, analyzed live

Idle
Loading editor…
0
Lines
0
Tokens
0
Chars
0
Comments
0
Strings
0
Max depth

Diagnostics

No issues found.

About

A real tokenizer, server-side

Every keystroke settles for a moment, then the editor sends the buffer to a Rust service. A dependency-free, C-family tokenizer turns it into a token stream, and an analysis pass reports metrics and diagnostics with exact line and column positions.

The lexer is pure logic with no I/O, so it is fully testable in isolation. The HTTP layer is a thin wrapper around it, and a conservative formatter re-indents brace-delimited code on request.

3
Languages parsed
10
Token categories
0
Charting libraries
1
Pure-logic core

Features

A language toolkit, end to end

Pure-logic tokenizer

A dependency-free C-family lexer produces tokens with positions for JavaScript, Rust, and JSON. No I/O in the core, so it is fully unit-testable.

Analyze-on-type

Keystrokes are debounced and sent to the backend; out-of-order responses are dropped with a monotonic request id so the readout never flickers backward.

Real diagnostics

Delimiter balance with mismatch and unclosed detection, unterminated strings and block comments, and TODO/FIXME markers, each with a line and column.

Server-side formatter

A conservative normalizer re-indents by net delimiter depth, ignoring brackets inside strings and comments and leaving multi-line literals untouched.

Monaco editor

The engine behind VS Code, integrated via a client-only dynamic import with the theme wired to the site's light and dark modes.

Honest states

Requests time out instead of hanging, and a clear banner appears when the analyzer is unreachable rather than silently showing stale data.