Circuitera · Browser workbench

Write and run C++ in your browser

Circuitera Terminal is a separate coding workspace for general programs. Its C++ compiler and runtime use WebAssembly and do not route desktop-style C++ through the Arduino AVR compiler.

USB features require a supported desktop browser and your permission.

Start with a normal C++ program

Open Terminal and select C++ if you previously saved another language. New Terminal workspaces default to C++. Write a program with main(), include the standard headers you need, and press Run. On the first run, allow time for the C++ runtime to load. Opening this guide does not download that runtime.

Read real results

Terminal displays compiler diagnostics, program output, exit status, and execution timing. Use std::cout for output and the interactive input control when your program waits on std::cin or getline. Stop terminates the current worker-based execution, including a program that loops indefinitely. A compile error must be fixed before the program can run.

Keep browser runtime limits in mind

WebAssembly execution is not a full desktop operating system. Do not assume native GUI libraries, arbitrary executables, host filesystem access, or unrestricted networking are available. Standard library and system-call support depend on the configured runtime. Test the functions your program needs and use the actual diagnostics to identify unsupported operations.

Keep Arduino and Terminal projects separate

Terminal maintains its own local document and language selection. Arduino sketches, board compilation, and USB upload remain in the Arduino IDE. Other languages can be edited in Terminal, but execution is available only when a real provider is configured; unsupported choices report Runtime not configured. Export or copy important work before clearing browser storage.

How it works

  1. Open Terminal with C++ selected and write a program with main().
  2. Press Run and allow the compiler/runtime to load on its first use.
  3. Inspect diagnostics and output, send stdin if requested, or Stop execution.

Frequently asked questions

Is Circuitera a C++ online IDE?

Terminal provides a separate C++ editor and real WebAssembly compilation/execution with standard input and output. It is not the Arduino AVR upload pipeline.

Can it run every desktop C++ library?

No. Browser runtime and system-call support are limited. Native GUI frameworks and arbitrary host executables are not available.

A first C++ program

#include <iostream>

int main() {
    std::cout << "Hello, world!" << std::endl;
    return 0;
}