Ruff Linter & Formatter Online
Run Ruff online — the fast Rust linter & formatter that replaces Flake8, isort and Black. Free, no install, runs in your browser.
Why use this tool?
Use this when you want to lint or auto-format Python without installing anything. Ruff is the fast, modern replacement for Flake8, isort, pyupgrade, and Black, and here it runs entirely in your browser via WebAssembly — paste code, pick your rules or format settings, and get results instantly.
import os, sys
import json
def add( x,y ):
unused = 42
result=x+y
return result
print( add(1,2) )Lint results will appear here.
Powered by Ruff 0.15.22 (WebAssembly) — the extremely fast Rust linter & formatter that replaces Flake8, isort, pyupgrade and Black. Everything runs locally in your browser. Need AST, tokens and a live editor? Try the Ruff Playground.
About Ruff Linter & Formatter
Ruff has become the de-facto standard for Python linting and formatting because it is written in Rust and runs 10–100× faster than the tools it replaces. A single tool covers what previously required Flake8 (and dozens of its plugins), isort, pyupgrade, autoflake, and the Black formatter.
This online version runs the official Ruff WebAssembly build directly in your browser — there is no server, no upload, and no installation. Linting reports each issue with its rule code (for example F401 for an unused import or E701 for multiple statements on one line), its exact line and column, and whether Ruff can auto-fix it.
Switch to Format mode to reformat your code to a consistent style with configurable line length and quote preference, matching what ruff format would produce in your editor or CI. Choose a rule preset — from Ruff's default set to the full ALL ruleset — to control how strict the linting is.
For a deeper, interactive experience with a live editor, editable raw config, shareable links and AST / token / formatter-IR views, use the separate Ruff Playground. This tool stays focused on quick, one-click linting and formatting.
Deciding whether Ruff can replace Pylint in a full project? Read our tested Ruff vs Pylint comparison: the same 14 lint categories, default and expanded configurations, automatic-fix result, fresh-process timings, and the semantic checks Ruff missed.
Frequently Asked Questions
Explore Other Tools
Ruff Playground
Check Ruff online free: paste Python and watch ruff check diagnostics, formatting, the AST, tokens and formatter IR update live, with an editable config — all in your browser.
Python Marshal Encryptor
Compile Python to version-locked marshaled bytecode with optional zlib compression and get a ready-to-run loader. Target Python 3.10–3.14. Runs 100% in your browser.
Python .pyc Decompiler
Decompile a compiled Python .pyc file back to readable source — all versions, running in your browser via WebAssembly. Nothing uploaded.
Python Bytecode Disassembler
Disassemble Python to CPython bytecode with the dis module — explore opcodes, code objects, jumps and constants. Runs in your browser; nothing uploaded.