Trust
Code Runner Safety
Some examples on BaseCodeByte run directly in your browser. This page explains exactly how that works, what runs where, and how to use the runners safely.
Where code runs
The C++ notebook runs in your own browser using JSCPP, an open-source C++ interpreter written in JavaScript. When you press Run, your code is interpreted locally on your device. It is not uploaded to or executed on our server.
Where they are available, the Python, JavaScript, TypeScript and SQL runners also execute locally in the browser (Python via Pyodide, SQL via a WebAssembly build of SQLite, and JavaScript/TypeScript in a sandboxed worker). For languages without a live browser runner, examples are shown as editable, copyable code with their expected output — they are not executed on a server.
No server-side execution
We do not run a server-side code execution service for the current notebooks. Code you type into an in-browser runner stays in your browser session. Because execution is local, you should still treat the editors as educational tools — do not paste secrets, passwords, API keys or other sensitive data into example code.
Browser execution limitations
In-browser interpreters support a practical subset of each language — enough to learn fundamentals, but not a full replacement for a local toolchain. JSCPP, for example, supports common C++ I/O, variables, control flow, functions, arrays, vectors and structs, but does not support the full standard library, advanced templates, file I/O or multi-file projects.
We try to label these limits honestly rather than presenting partial support as complete. For real projects, install a local compiler or runtime — our setup guides walk through installing and running each language in VS Code.
Examples are educational
All code on BaseCodeByte is provided for learning, as-is, without warranty. Output shown is the expected result in a typical environment and may differ on your machine. Always review and understand code before running it anywhere outside these examples.