Twelve free in-browser code editors with syntax highlighting for JavaScript, Python, PHP, Java, SQL, HTML, CSS, JSON, Ruby, Go, C/C++ and C#.

JavaScript Editor

Write and edit JavaScript in the browser with syntax highlighting, bracket matching and auto-indent. Includes an ES2015+ syntax quick reference.

HTML Editor

Edit HTML in the browser with tag highlighting, auto-closing and indentation, plus a reference for the semantic elements search engines expect.

PHP Editor

Edit PHP in the browser with syntax highlighting for tags, variables and heredocs, plus a reference for PHP 8 types, enums and named arguments.

CSS Editor

Edit CSS in the browser with selector and property highlighting, plus a reference for custom properties, grid, flexbox and container queries.

Python Editor

Edit Python in the browser with indentation-aware highlighting, plus a reference for f-strings, comprehensions, type hints and the standard library.

Java Editor

Edit Java in the browser with syntax highlighting for classes, generics and annotations, plus a reference for records, streams and switch expressions.

Ruby Editor

Edit Ruby in the browser with syntax highlighting for blocks, symbols and string interpolation, plus a reference for the core Enumerable methods.

JSON Editor

Edit, format and check JSON in the browser with bracket matching and highlighting, plus a reference for the strict rules that trip most people up.

SQL Editor

Edit SQL in the browser with keyword highlighting and formatting, plus a reference for joins, window functions and the SQL logical execution order.

C / C++ Editor

Edit C and C++ in the browser with syntax highlighting for preprocessor directives, templates and pointers, plus a modern C++ feature reference.

Go Editor

Edit Go in the browser with syntax highlighting for goroutines, interfaces and struct tags, plus a reference for error handling and generics.

C# Editor

Edit C# in the browser with syntax highlighting for LINQ, attributes and generics, plus a reference for records, pattern matching and nullable types.

What these editors are

Twelve in-browser editors built on Ace, each configured for one language: syntax highlighting, bracket and tag matching, auto-indent, code folding, multiple cursors and search-and-replace. They open instantly, need no account and no install, and every page includes a reference section for the language it covers.

They edit, they do not execute. There is no runtime behind them, so you cannot run a Python script or query a database here. That is a deliberate limit: a browser tab is the right place to read, paste, tidy and check a snippet, and the wrong place to run untrusted code. For execution you want a real local toolchain or a sandboxed service designed for it.

Pick your language

  • JavaScript — ES2015+ syntax reference
  • Python — indentation-aware highlighting
  • PHP — tags, heredocs, PHP 8 features
  • HTML — tag matching and semantic elements
  • CSS — selectors, grid, custom properties
  • JSON — strict-syntax reference
  • Java — records, streams, generics
  • SQL — joins and logical execution order
  • Ruby — blocks, symbols, Enumerable
  • C / C++ — preprocessor, pointers, templates
  • Go — goroutines, interfaces, errors
  • C# — LINQ, records, nullable types

Why a separate page per language

The editing engine is shared, but the configuration and the reference material are not. Each editor loads the Ace mode for its language, which is what drives tokenisation, comment style, indentation rules and folding. A Python editor that indents like C is useless; an HTML editor that does not know which elements are void will auto-close <br> and produce invalid markup.

The reference section on each page covers the syntax that language's users actually look up — which is different for every one of them. Nobody searching for Go needs a table of PHP magic constants.

Your code stays in your browser

Nothing you type is posted anywhere. The editor is JavaScript running in your tab; there is no autosave to a server, no account, and no telemetry on the content. That makes these editors safe for pasting a snippet from a private codebase to read it with highlighting — something you should never do in an online tool that executes code, because execution requires transmission.

The corollary is that nothing persists. Refresh the tab and your content is gone. Copy anything you want to keep.

What a browser editor is genuinely good for

  • Reading unfamiliar code with highlighting when you are away from your IDE or on a machine that is not yours.
  • Reformatting a snippet pasted out of a chat log, a PDF or an email, where the indentation has been destroyed.
  • Checking bracket and tag balance in a fragment before you paste it into a real project — the matching indicator finds the missing brace faster than reading does.
  • Teaching and screen sharing, where a link that opens instantly beats asking everyone to install something.

What it is not good for is sustained development. There is no file tree, no version control, no dependency resolution, no test runner and no debugger. Those are the reasons IDEs exist, and no browser tab replaces them.