DEV Community

Aswanth R
Aswanth R

Posted on

Running Python on a School Chromebook Without Admin Rights (No Install, No Server)

If you've ever tried to get Python running on a school-issued Chromebook, you know the problem: no admin rights, no Play Store access half the time, no terminal, and IT locks down anything that looks like an installer. Online Python "sandboxes" often need an account, have ads, or time out mid-session.

There's actually a simpler path that most people don't realize works: you don't need to install Python at all — you can run it entirely inside a webpage, offline, with zero setup.

How this actually works

Modern browsers can run a real Python interpreter compiled to WebAssembly (via a project called Pyodide). That means an HTML file, opened directly from a USB stick, Google Drive, or the Downloads folder, can execute actual Python — no server, no install, no admin permissions needed, because nothing is being installed. The browser is just running code, the same way it runs JavaScript on any webpage.

I built a small wrapper called Pytml specifically to make this trivial for exactly this situation: a single script tag, then write Python inside a tag.

<!DOCTYPE html>
<html>
<head>
    <script src="https://pytml.vercel.app/pytml.js"></script>
</head>
<body>
    <py>
name = input("Your name? ")
print(f"Hi {name}, welcome to Python!")
    </py>
</body>
</html>
Enter fullscreen mode Exit fullscreen mode

Save that as lesson1.html, double-click it, and it runs — even completely offline after the first load, even opened straight from file:// on a Chromebook with zero permissions.

Why this matters for classrooms specifically
No IT approval needed. It's just a webpage. Nothing to whitelist, nothing to install.
Works on the most locked-down devices. If a Chromebook can open a .html file, it can run this.
Real Python, not a toy subset. Full tracebacks, and NumPy/Pandas/Matplotlib work via micropip if a lesson needs them.
Shareable as a single file. Email a .html file, drop it in a shared Drive folder, or hand out a USB stick — no repo clone, no pip install instructions to walk students through.
Try it

Website: https://pytml.js.org
Demo: https://pytml.js.org/demo
Source: https://github.com/nodex-ar/pytml

If you're a teacher, tutor, or bootcamp instructor dealing with locked-down devices, I'd genuinely like to hear what's been painful about teaching Python in that environment — happy to build toward whatever's actually missing.

Top comments (1)

Collapse
 
ivannovazzi profile image
Ivan Annovazzi •

Your example loads pytml.js from a remote URL, but you say it runs offline from file:// on a Chromebook. Browser caches are unreliable for local pages, so does the lesson ship with the js file saved next to the html? That's the part I'd expect school networks to break first