Skip to content

    Online Compiler and Code Playground: Run Code in Your Browser

    WebFiddle is a free online compiler and code editor for HTML, CSS, JavaScript, TypeScript, PHP, Python, Node.js, SQL, Ruby and Lua. Pick a sandbox, write code and press Run. Your code executes on your own device, with nothing to install and no account to create.

    • 10 languages

      9 sandboxes in one place

    • Runs in your browser

      Code is not executed on a server

    • No setup

      Nothing to install

    • Free, no signup

      No account required

    Online compilers and editors

    Choose a language to open its compiler or editor. Every sandbox runs client-side and is free to use.

    Featured

    HTML Online Compiler & Editor

    Write HTML, CSS and JavaScript side by side with a live preview in a sandboxed iframe, a console panel and quick-start templates.

    Open

    PHP Online Compiler

    Run PHP 8.0 to 8.5 scripts in your browser with php-wasm 0.1.0 (WebAssembly). No local server or PHP install needed.

    Open

    Python Online Compiler

    Python 3.12 in your browser via Pyodide 0.26.1 (WebAssembly). Run scripts and try the standard library without installing anything.

    Open

    Node.js Online Compiler

    Try async/await, promises and console output in a Web Worker with a Node.js API shim. npm packages are not supported.

    Open

    SQL Online Compiler

    Create tables and run queries on SQLite in your browser with sql.js 1.14 (SQLite compiled to WebAssembly).

    Open

    Ruby Online Compiler

    Write and run Ruby 3.4 in your browser with ruby.wasm 2.8.1 (WebAssembly). No Ruby install needed.

    Open

    Lua Compiler

    Run Lua 5.3 scripts with Fengari (Lua 5.3 VM in JavaScript), handy for testing snippets before using them in a game or app.

    Open

    TypeScript Online Compiler

    Write TypeScript 5.8, see compiler diagnostics and run the transpiled JavaScript in the browser.

    Open

    React Online Compiler

    Build React 18 components in JSX or TSX with a live preview, ready-made sample projects and npm imports from esm.sh.

    Open

    What runs where

    No sandbox needs a server to execute code. This is the engine behind each one.

    SandboxVersionRuns on
    HTML, CSS & JavaScriptYour browsersandboxed iframe with live preview
    PHP8.0–8.5php-wasm 0.1.0 (WebAssembly)
    Python3.12Pyodide 0.26.1 (WebAssembly)
    Node.jsYour browserWeb Worker with a Node.js API shim (not a real Node.js process)
    SQLSQLitesql.js 1.14 (SQLite compiled to WebAssembly)
    Ruby3.4ruby.wasm 2.8.1 (WebAssembly)
    Lua5.3Fengari (Lua 5.3 VM in JavaScript)
    TypeScript5.8TypeScript compiler running in the browser
    React18React UMD builds with in-browser Babel

    How it works

    1. Pick a sandbox

      Open the editor for your language. Each sandbox loads only the engine it needs: WebAssembly builds for PHP, Python, SQLite and Ruby, and JavaScript for Lua, TypeScript, React and Node.js-style code.

    2. Run it locally

      Press Run and the code executes in your browser tab or a Web Worker. Output appears without a round-trip to a server, and nothing you type is sent to one for execution.

    3. Share with a link

      Share puts your code into the URL: most sandboxes compress it with LZ-string and the HTML editor uses Base64. Anyone with the link opens the same code, with no upload and no account.

    Quick-start HTML templates

    Open a ready-made HTML, CSS and JavaScript example in the editor, then change it however you like.

    Responsive Landing

    Modern landing page with hero section and responsive navigation.

    Open

    Modern Form

    Clean contact form with floating labels and basic validation style.

    Open

    Grid Gallery

    Responsive masonry-style image gallery using CSS Grid.

    Open

    Glassmorphism

    Trendy frosted glass effect with backdrop-filter.

    Open

    Flexbox Center

    The easiest way to center items vertically and horizontally.

    Open

    Login Modal

    Interactive overlay modal with entry animation.

    Open

    Pricing Table

    Responsive 3-tier pricing comparison.

    Open

    JS Todo List

    Functional todo list with DOM manipulation.

    Open

    Neumorphic Calc

    Working calculator with soft-ui design.

    Open

    Countdown

    Event countdown timer.

    Open

    Latest from the blog

    Tutorials and write-ups on WebAssembly, JavaScript, React, Python, PHP and CSS.

    · 6 min read

    CSS Box Model Explained with Examples

    CSS box model explained with examples: content, padding, border and margin, content-box vs border-box math, margin collapsing and DevTools tips.

    · 4 min read

    JavaScript Basics for Beginners

    Learn JavaScript basics: const and let, functions, the DOM, arrays and objects, with runnable examples and answers to common beginner questions.

    See all 22 articles on the blog →

    Frequently asked questions

    What is WebFiddle?

    WebFiddle is a free online compiler, code editor and code playground that runs entirely in your browser. It supports HTML, CSS, JavaScript, TypeScript, PHP, Python, Node.js, SQL, Ruby and Lua, plus a React playground. There is nothing to install and no account to create: open a sandbox, write your code and press Run to see the output.

    Which languages and versions does WebFiddle support?

    There are 9 sandboxes: PHP 8.0 to 8.5 (php-wasm 0.1.0), Python 3.12 (Pyodide 0.26.1), SQL on SQLite (sql.js 1.14), Ruby 3.4 (ruby.wasm 2.8.1), Lua 5.3 (Fengari), TypeScript 5.8, React 18, a Node.js-style JavaScript runner, and an HTML, CSS and JavaScript editor with a live preview.

    How do online compilers work?

    Most online compilers send your code to a remote server, which runs it and returns the output to your page. WebFiddle runs code on your own device instead: each sandbox loads an engine into the browser, using WebAssembly for PHP, Python, SQLite and Ruby, and Web Workers for Python and Node.js, so nothing is sent to a server for execution.

    Does my code run on a server?

    No. Your code runs inside your own browser: PHP, Python, SQLite and Ruby use WebAssembly builds, while Lua, TypeScript, React and the Node.js sandbox use JavaScript. Some engines are downloaded from public CDNs when a sandbox loads, but the code you write is never sent to a WebFiddle server to be executed.

    Is WebFiddle free, and do I need an account?

    Every sandbox is free to use, and none of them asks for an account, email address or sign-in. WebFiddle has no user accounts at all. Recent sessions from the HTML editor, PHP sandbox and React playground are saved in your browser's local storage, so they stay on this device and appear on the History page.

    How do I share my code?

    Use the Share button in any sandbox. WebFiddle stores your code in the link itself: most sandboxes compress it with LZ-string, and the HTML editor encodes it as Base64. Nothing is uploaded, so anyone who opens the link gets the same code, although very large programs produce very long URLs.

    Can I embed a sandbox on my own website?

    Yes. Every sandbox has an embeddable version at /embed/ followed by the language, such as /embed/python, which you can place in an iframe on a blog post or documentation page. Sandbox pages include a copy-ready embed snippet, and the embed shows the editor with a link to open the code in the full sandbox.

    What are the limitations?

    Everything runs in a browser tab, so programs cannot listen on network ports, load native extensions or read your real file system. The Node.js sandbox runs in a Web Worker with a Node.js API shim, not a real Node.js process, so npm packages cannot be loaded. SQL runs on SQLite only, not PostgreSQL or MySQL.