Coding on a Chromebook in 2026 is not a compromise the way it was five years ago. There are four honest paths: a real local Linux container called Crostini, an SSH session to a machine you own, a browser editor like vscode.dev or GitHub Codespaces, or a cloud terminal like Cosyra opened in Chrome. We wrote this because Chromebooks are everywhere: in classrooms, in backpacks, propped on a kitchen counter. The question we kept getting was not "is it fast enough" but "what will ChromeOS actually let me run." The honest answer is: more than a phone, because Crostini is genuine Debian Linux, not an emulator. The right pick depends on whether your device is managed by an admin, how much RAM and storage it has, and whether you want the same session waiting on your phone later. Sign up gets you 1 hour free, no credit card.
This is the pillar page for the Chromebook coding topic, and it sits next to
the device guides for the other screens people code from. If you are on a
tablet, start with coding on iPad;
on an Android phone, see coding on Android; on an iPhone, coding on iPhone. The Chromebook is the odd one out in that list: unlike every phone and
tablet, it can run a real local Linux userland with apt. For
the device-agnostic terminal view, see
mobile coding terminal: the complete guide, and for the agent-first picture across
Claude Code, Codex CLI, OpenCode, and Gemini on mobile, that pillar goes deeper on agent-driven work.
Quick decision: pick the path that matches your constraint
- You own the Chromebook and it has spare RAM and storage: turn on Crostini and you have real local Debian Linux for free. Crostini path ↓
- Your Chromebook is managed by a school or work admin: the Linux toggle is probably locked, so a browser-based cloud container is the only thing that needs no device changes. Cloud path ↓
- You already run an always-on Linux machine: SSH to it straight from the Crostini terminal or the Secure Shell extension. SSH path ↓
- You just want the verdict: the decision framework picks for you from three questions. Decision framework ↓
Prefer to weigh them side by side? Jump to the full comparison table ↓.
What changes when you code on a Chromebook instead of a laptop?
Less than you would expect, and that is the whole point. A Chromebook has a real keyboard and a real trackpad, so the painful part of mobile coding (no hardware keyboard) does not apply. What changes is where your code runs. ChromeOS is built around the browser, and its local Linux lives in a sandboxed VM that is deliberately walled off from the rest of the system. So the question is not "can I type code" but "where does the toolchain live: on the device in Crostini, on a server I SSH to, or in the cloud."
The honest opinion we will plant a flag on: a cheap Chromebook is a better coding machine than its price tag suggests, because for agent-driven work the expensive part, the model, runs at Anthropic or OpenAI, not on the device. The Chromebook renders a terminal and applies diffs. We have done a full afternoon of refactoring from a $250 loaner Chromebook on a wobbly library desk, with the agent doing the work in a Chrome tab, and the hardware never once got in the way. Most people who say "you need a real laptop to code" are picturing a local compiler eating 16 GB of RAM, not a thin client driving a cloud machine.
Why is a Chromebook different from a phone or tablet?
One fact separates it: Crostini. ChromeOS ships an official Linux
development environment (a Debian container in a lightweight VM) that gives
you real
apt, a home directory, glibc, and root inside the VM.
Google documents it as a first-class
developer feature. No phone has that. On an iPhone the closest local option is
an emulator (iSH)
where Node crashes with an illegal-instruction error; on Android,
Termux gives a real on-device userland
but it is ARM with Bionic libc, which forces workarounds for tools whose native
binaries expect glibc.
A Chromebook sidesteps both problems. Because Crostini's Debian is glibc on
both Intel and ARM devices, the native Claude Code installer (curl -fsSL https://claude.ai/install.sh | bash) runs directly, with none of the libc gymnastics Android's Termux needs.
That is the single biggest reason the Chromebook story is friendlier than
the phone story, and it is also why a managed Chromebook that locks Crostini
is so frustrating, because it takes the best path away and leaves you the
browser. We cover the locked-device case in full below.
What are the four ways to code on a Chromebook?
The four approaches are the local Crostini Linux container, an SSH session to a server you own, browser editors like vscode.dev and GitHub Codespaces, and a cloud terminal like Cosyra opened in Chrome. The right pick depends on whether Crostini is available to you, how much RAM and storage the device has, and whether you want one environment that follows you to a phone.
1. Local Linux with Crostini
This is the path if you own the Chromebook, it supports Crostini, has at
least 4 GB of RAM with spare storage, and is not locked by an admin. Open
Settings → About ChromeOS → Developers and click
Set up next to "Linux development environment." ChromeOS downloads
a Debian VM; Google's docs say
setup can take 10 minutes or more. From there you get a normal Debian box: apt install what you need,
clone repos, install the real Linux build of VS Code, and run the AI agents with
their native installers.
When Crostini is the right pick: an owned Chromebook with enough RAM and storage, where you want a free environment you fully control and files that live on the device. When it breaks: an admin disabled Linux, the device has under 4 GB of RAM or a 32 GB eMMC the VM eats into, or you want the same session waiting on your phone — a local container cannot follow you off the device. The container also has no GPU acceleration and no camera access, so it is a development shell, not a place for accelerated workloads. For the agent setup inside Crostini specifically, our Claude Code on a Chromebook guide walks through the native-installer path step by step.
2. SSH from the Chromebook to your own machine
If you already run an always-on Linux box, the Chromebook can be a thin SSH
client. The Crostini terminal includes ssh out of the box, or you
can use the Secure Shell extension without enabling the full Linux container at
all. Pair it with an SSH workflow and
tmux so the session survives a closed lid or a dropped network, and
you have a stable pipe to a real machine with your own keys and config.
The failure mode is always the server. Your desktop sleeps, your home power blips, your ISP rotates the IP and the port forward dies, and the session you needed is gone while you are sitting in a coffee shop with the Chromebook open. We kept hitting those stories ourselves, which is part of why we built a cloud-first alternative. When SSH is the right pick: you run reliable hardware, you have shell config the way you like it, and you would rather own the environment than pay for a managed one.
3. Browser editors (vscode.dev, GitHub Codespaces)
A Chromebook is, above all, an excellent browser, and the browser-editor path leans into that. GitHub Codespaces and vscode.dev run in Chrome with no local setup. GitHub's own marketing says you can "spin up Codespaces from any device with internet access," and a Chromebook qualifies. Codespaces gives you real cloud compute (GitHub Free includes 120 core-hours a month, then metered from $0.18/hr for a 2-core machine, as of 2026-06-05), with deep GitHub integration for repos, pull requests, and Actions.
The catch is what the browser sandbox leaves out. Plain vscode.dev has no integrated terminal or debugger, so you can edit and commit but not run code without a backend, and Microsoft's touch-optimized mobile layout has sat in the VS Code backlog since 2019. Codespaces also ships no AI coding CLIs pre-installed; you add them through a custom dev container, which is a setup step you own. For the head-to-head against a native terminal, see Cosyra vs VS Code for the Web and Cosyra vs Codespaces on mobile.
4. Cloud terminal in Chrome (Cosyra)
The fourth path is a cloud terminal you open in Chrome. We run a per-user Ubuntu 24.04 x86_64 container on Azure AKS, reached from the Chromebook's browser or from the Cosyra Android app, which runs on most modern Chromebooks. Claude Code, Codex CLI, OpenCode, and Gemini CLI come pre-installed, with 30 GB of persistent storage and session hibernation, so closing the lid does not cost you the container. It is BYOK: you bring your own Anthropic, OpenAI, or Google key.
The reason this matters most on a Chromebook is the managed-device wall. A cloud terminal in a tab is just a website, so it works on a school or work Chromebook where the Linux toggle is locked, and no admin policy applies to a web page. It also asks nothing of a low-end device, since the container lives in the cloud and the Chromebook only renders the screen. The honest trade-off: this needs a network and is not offline, and it is a paid product after the free hour. What you get back is no Crostini setup, no server to babysit, the agents already installed, and the same session on your phone on the bus home. For the agent walkthroughs, we wrote Claude Code on phone and Codex CLI on phone.
Try it from your Chromebook. Open cosyra.com in Chrome — 1 hour free on signup, no credit card. A real Ubuntu container with four AI agents pre-installed, working even on a managed device. Google Play / App Store / Pricing details
How do the Chromebook coding options compare?
The table below is the side-by-side we use when someone asks which Chromebook coding setup to pick. Prices and facts are dated; every third-party row is grounded in a factsheet we re-verify on a schedule or in Google's own ChromeOS docs.
| Feature | Crostini (local) | SSH + your server | Codespaces (Chrome) | Cosyra (cloud) |
|---|---|---|---|---|
| Setup time | ~15 min (Linux + install) | Depends on server | ~2 min (open in Chrome) | ~1 min (open in Chrome) |
| Price | Free | Free + your server | 120 free core-hrs, then metered | $29.99/mo after free hour |
| Works on a managed Chromebook | No (admin can lock Linux) | Maybe (if SSH allowed) | Yes (just a website) | Yes (just a website) |
| Real x86_64/ARM Linux | Yes (Debian, glibc) | Depends on server | Yes | Yes (Ubuntu 24.04) |
| AI agents pre-installed | No (you install them) | No | No (install yourself) | Yes (4 agents) |
| Integrated terminal | Yes | Yes | Codespaces yes, vscode.dev no | Yes |
| Demands on device RAM/storage | High (local VM) | Low (thin client) | Low (browser tab) | Low (browser tab) |
| Persistent storage | On device (your eMMC) | Your server | Yes (hibernates) | Yes (30 GB, always-on) |
| Same session on your phone | No | Yes (SSH from phone) | Browser only | Yes (iOS + Android apps) |
| Offline capable | Files yes, model no | No | No | No |
| API key model | Local only | Your server | GitHub-managed | BYOK (you own keys) |
Which Chromebook coding setup should you pick?
Three questions settle it. First, is the Linux container available and not locked by an admin? If no, your honest options are a browser editor for edit-and-commit or a cloud terminal for a real shell with agents — both run in a Chrome tab and need no device changes. If yes, the next question is whether you want the same session on your phone or are short on device storage: if either is true, a cloud container beats a local one; if not, Crostini gives you free local Debian. The last question only matters if you already own an always-on machine — then SSH to it is the leanest path of all. The flowchart below is the same logic.
How do you set up a real dev environment on a Chromebook in two minutes?
The fastest path to a real Linux box on a Chromebook is the cloud route, because there is no Crostini download and no admin toggle in the way. Open cosyra.com in Chrome, sign in, and the Ubuntu container provisions on first launch. The terminal session below is what the first two minutes look like once it is up.
$ # Opened cosyra.com in Chrome, container provisioned on sign-in
$ # Verify the agents are pre-installed
$ claude --version
Claude Code v2.1.170
$ codex --version
codex 0.139.0
$ # Bring your own key, then start coding
$ echo 'export ANTHROPIC_API_KEY="sk-ant-..."' >> ~/.bashrc && source ~/.bashrc
$ git clone https://github.com/your-org/app.git
$ cd app && claude
Claude Code — type a prompt, read the diff, accept. The agent does the typing.
That is the whole loop. You type a prompt, the agent proposes a change, you read the diff and accept it, and you push from the same terminal — all in a Chrome tab. Because the container hibernates rather than resetting, you can close the lid, walk to class, and reopen to the same session. If your Chromebook is unmanaged and you would rather run everything locally, the Crostini path above gives you the same agents inside a Debian container you own; the Claude Code on a Chromebook guide covers that route in detail.
What does a real Chromebook coding session look like?
A real session is often short and supervised, done in a gap between other things. We open the Chromebook on a couch, on a kitchen table, or at a library desk, type a prompt to the agent, watch it propose a change, and read the diff. The work that fits a Chromebook well is broad: with a real keyboard it is comfortable for longer edits than a phone, and with a cloud or Crostini backend it handles bug fixes, small features, dependency bumps, branch reviews, and kicking off test runs. The work that fits badly is anything that wants a heavy local GPU or a desktop IDE plugin with no web build — Crostini has no GPU acceleration, and the browser editors are not full IDEs.
The honest opinion we will stand behind: for students and anyone on a budget, a Chromebook plus a cloud Linux container is one of the best dollar-for-dollar coding setups available, and the thing holding it back is reputation, not capability. The "Chromebooks are just for web browsing" line is a decade out of date. Between Crostini and a browser terminal, a $300 laptop can drive a real development workflow — and on a managed school device where Crostini is off, the browser path is the one that still works.
Which guide should you read next?
This pillar stays general on purpose. For the tool or device you actually use, we have a deeper guide:
- Claude Code on a Chromebook, the local Crostini install versus the browser route, side by side.
- Claude Code on phone and Codex CLI on phone, for the same container reached from the phone your Chromebook session follows you onto.
- Coding on Android and coding on iPhone, the sibling device pillars, since ChromeOS sits between a laptop and a phone.
- Cosyra vs Codespaces on mobile and Cosyra vs VS Code for the Web, the head-to-heads against the browser-editor path.
- SSH from your phone, the client-plus-server path and where it shines.
tl;dr
Four ways to code on a Chromebook. Pick Crostini if you own the device, it has the RAM and storage, and the Linux toggle is not locked — it is free, real local Debian. Pick SSH if you already run an always-on Linux machine. Pick vscode.dev or Codespaces if you only need to edit and commit in a browser. Pick Cosyra if your Chromebook is managed, low-spec, or you want a ready-made Ubuntu container with AI agents pre-installed and the same session on your phone.
Google Play / App Store. Sign up — 1 hour free, no credit card. Extend with a 10-hour, 7-day trial when you want more.
Get a real Linux dev box on your Chromebook in two minutes. Open cosyra.com in Chrome — no Crostini, no admin toggle — and the Ubuntu container with Claude Code, Codex CLI, OpenCode, and Gemini CLI is ready.
Frequently asked questions
Can you code on a Chromebook in 2026?
Yes, and more comfortably than on a phone or tablet, because a Chromebook has a real keyboard and ChromeOS ships an official local Linux container called Crostini. The four real paths are a local Debian environment with Crostini, SSH from the Chromebook to a machine you own, a browser editor like vscode.dev or GitHub Codespaces, or a cloud Linux terminal like Cosyra opened in a Chrome tab. The main blocker is not the hardware — it is whether an admin has turned the Linux toggle off.
[source: Google Chromebook Help, "Set up Linux on your Chromebook"]
How do I turn on Linux (Crostini) on a Chromebook?
Open Settings → About ChromeOS → Developers, then click Set up next to
"Linux development environment." ChromeOS downloads a Debian VM and
Google's docs note setup can take 10 minutes or more. Give the container
at least 10 GB of disk. The container has no GPU acceleration and no
camera access, but a terminal, apt, and Node-based tools all
run.
[source: Google Chromebook Help, "Set up Linux on your Chromebook"]
Can I code on a school or work managed Chromebook?
Often not locally. On a managed device, an admin can disable the Linux development environment by policy, and the Set up button is greyed out — it is enforced from the Admin console, not your settings. Do not try to bypass device management. Ask your admin to enable Crostini, or use a browser-based cloud terminal that needs no device changes. A cloud terminal you open in a Chrome tab is just a website, so the Linux policy never applies.
[source: ChromeOS Community, "Linux on a school Chromebook that has blocked things"]
What is the best Chromebook for coding?
For local Crostini work, the comfortable floor is roughly an Intel i3 or equivalent, 8 GB of RAM, and 64 GB or more of storage, since the Linux VM lives on the device. For agent-driven or cloud work the spec matters far less — the model runs on a server and the Chromebook mostly renders a terminal, so a 4 GB device handles a session. See pricing for what the cloud container costs.
[source: Hacker News, "Ask HN: Are Chromebooks ready for serious development?"]
Can you run VS Code on a Chromebook?
Two ways. If Crostini is enabled, install the real Linux build of VS Code inside the Debian container, the same as on any Debian machine. If Crostini is locked, open vscode.dev or github.dev in Chrome — the browser build edits and commits but has no integrated terminal or debugger, so you still need a backend to run code. Microsoft has had a touch-optimized mobile layout in the backlog since 2019.
[source: microsoft/vscode #85254, "Web: Mobile Safari support", open since 2019]
Can you run Docker on a Chromebook?
Inside Crostini, yes, to a point — the Linux container is a real Debian VM, so you can install Docker and run containers, though it is nested inside ChromeOS's VM and heavier than on bare Linux. There is no Docker directly on ChromeOS itself. If your workflow leans hard on containers, a remote Linux host is steadier; even hosted environments vary in what nested Docker-in-Docker they allow, so verify case by case.
[source: ChromeOS for Developers, "Linux on ChromeOS"]
Can I run Termux on a Chromebook?
You can, because most modern Chromebooks run Android apps, but it is rarely the right choice. Termux is built for Android's ARM userland; on a Chromebook the native Crostini Debian container is a cleaner, glibc-based local Linux that avoids the libc workarounds Termux needs for tools like the Claude Code native binary. Reach for Termux on a Chromebook only if Crostini is unavailable and you specifically want the Android app sandbox.
[source: ChromeOS for Developers, "Linux on ChromeOS" — Crostini is the official local Linux path]