On the first visit, the browser downloads the Linux OS image (~6 MB), the v86 CPU emulator, and all supporting files. This can take 15–30 seconds depending on your connection. After the first visit everything is cached — subsequent loads are fast (2–4 seconds).
No. This is a normal kernel boot message from the emulated Linux kernel. You can safely ignore it. Give it a few seconds and the shell prompt will appear.
It runs a lightweight BusyBox Linux 4.15.7 kernel compiled specifically for the v86 x86 emulator. It includes a full shell (ash/sh), standard POSIX utilities, and common tools like vi, grep, awk, sed, find, and more.
Yes — files saved inside /mnt are stored in your browser's IndexedDB and persist across sessions. Even if you close the tab or restart the browser, your files will be there when you come back.
Files saved outside of /mnt (e.g. in /root or /home) exist only in the emulated VM's memory and will be lost on reload. Always save your work to /mnt.
Yes. Drag any file from your desktop onto the page and it will be imported into the browser filesystem, accessible at /mnt/<filename>.
Open your browser's developer tools → Application → Storage → Clear Site Data. This removes the cached VM state and all files in IndexedDB. The next page load will perform a cold boot.
Yes — this page loads Pyodide (Python 3.11 compiled to WebAssembly) in the background. Once the Python ✓ badge appears in the top bar, you can use Python via the browser console:
pyodide.runPython(` import numpy as np a = np.array([1, 2, 3]) print(a * 2) `)
NumPy is pre-loaded automatically.
/mnt?Yes. Read the file from the Filer filesystem and pass it to Pyodide:
// In the browser console:
fs.readFile('/mnt/hello.py', 'utf8', (err, code) => {
pyodide.runPython(code);
}); Yes, using micropip. Run this in the browser console:
await pyodide.loadPackage('micropip');
const micropip = pyodide.pyimport('micropip');
await micropip.install('requests'); Pyodide includes over 200 pre-built scientific packages. See the full package list.
The terminal is powered by three open-source projects:
No. Everything runs entirely in your browser. The Linux VM, your files, and Python execution all happen client-side. No data is sent to any server.
Special Thanks: David Humphrey for browser-shell library that enables core terminal functionality.
Hosted on Cloudflare.
/PC is open source — view the source on GitHub. Found a bug or have a feature request? Open an issue on GitHub.
Reach me on Twitter for feature requests!