Can You Really Code on an iPad or Chromebook?
The keyboard is fine. The problem is that tablets and Chromebooks can't run your project's toolchain like a laptop. The approaches that work — SSH to a remote machine, browser editors, cloud workspaces, and AI agents doing the heavy lifting — and where each falls short.
An iPad with a keyboard case is a lovely machine to type on. A Chromebook is cheap, light, and has a battery that lasts all day. Both are tempting as a development machine, or as the thing you bring when you'd rather not carry a laptop.
The question isn't whether you can write code on them — any device with a keyboard can do that. It's whether you can run your project: install its dependencies, start its server, run its tests, and use the tools the project expects. That's where they differ from a laptop, and where the workarounds come in.
Why it's harder than it looks
iPad. iPadOS doesn't let you run arbitrary programs the way a desktop operating system does. There's no general-purpose terminal where you can install Node, Python, Postgres, and Docker and have them behave like they do on a Mac or Linux machine. Some apps provide limited local environments, but a typical web project's full toolchain doesn't run natively.
Chromebook. ChromeOS includes an optional Linux environment (often called Crostini), which runs a real Linux container. Many projects run in it well, especially on a machine with enough memory. The limits are the hardware — many Chromebooks are low-powered — and the edges: Docker, GPU tooling, and some USB devices can be awkward or unavailable depending on the model and settings.
So a Chromebook can often be a real local dev machine, within its hardware. An iPad essentially can't, for most projects. For both, the most dependable approach is the same: run the project somewhere else, and use the device as the screen and keyboard.
Approach 1: SSH into a remote machine
Rent a server or use a machine you already own, and connect over SSH. Your project runs there — full Linux, any tools — and you edit in a terminal editor like Vim, Neovim, Helix, or nano.
On iPad: a good SSH app — Blink Shell, Termius, and others — gives you a proper terminal. Blink also supports mosh, which keeps your session alive through sleep, network changes, and flaky Wi-Fi, which matters a lot on a tablet that constantly suspends apps.
On Chromebook: the Linux terminal has ssh built in, or use an SSH app.
Always use tmux (or a similar multiplexer) on the remote machine, so your session survives disconnections. A tmux Cheat Sheet for Long-Running Sessions covers the essentials.
Strengths: fast, lightweight, works on poor connections, full power of a real machine. Weaknesses: terminal-only editing, and you're running a server — see How to Run Claude Code on a Remote Server for what that involves.
Approach 2: a browser-based editor
If you want a graphical editor, run VS Code in the browser:
- GitHub Codespaces — a hosted environment with VS Code in the browser, created from your repository. Works in Safari on iPad and in Chrome. Billed by usage — see How Much Does GitHub Codespaces Actually Cost?.
- code-server or OpenVSCode Server on your own machine — VS Code served to your browser. Put it behind proper authentication, never just a password on the open internet. (Self-Hosted Cloud IDEs in 2026.)
- vscode.dev — VS Code in the browser for editing repositories and, with a remote tunnel, connecting to a machine you run.
Strengths: a full graphical editor with extensions, files, and search.
Weaknesses on iPad: browser IDEs fight with the tablet for keyboard shortcuts — Cmd+W, Cmd+T, and friends may go to Safari instead of the editor. Adding the site to your home screen as a web app helps. Needs a steady connection.
Approach 3: a cloud development environment
A step up from a raw server: a service that gives each project a ready-made environment with the runtime, dependencies, database, and preview URLs already set up, reachable from a browser. You don't administer anything; you open the project and work. The trade-offs versus local development are covered in Cloud Development Environments vs Local Setup.
Strengths: nothing to maintain; the environment is the same from every device. Weaknesses: a monthly cost, and you're dependent on a connection.
Approach 4: let an agent do the heavy work
This one changes the equation most. With an AI coding agent like Claude Code running on a remote machine, a lot of work shifts from typing code to describing, reviewing, and steering — which is exactly what a tablet is good at. You describe the change, the agent edits files, runs the tests, and reports back; you read the diff, try the preview, and push back where it's wrong.
That works well from an iPad in a café — or even a phone on a train — as long as the agent is running on a machine that stays on. How to Use Claude Code From Your Phone compares the ways to do it.
Practical tips
- Get a real keyboard with an Escape key, or remap one. Terminal editors and many tools depend on it; iPad keyboards often lack a physical Escape. iPadOS lets you remap Caps Lock to Escape in keyboard settings.
- Use mosh plus tmux for SSH on iPad. The combination makes reconnection seamless.
- Preview your app from the device. When the app runs on a remote machine, you need a URL to see it: a preview URL from your cloud environment, an SSH port-forward, or a tunnel. Plan for this — it's the step people forget.
- Keep your credentials off the device where you can. A remote environment means your SSH keys and cloud credentials live on the server, not on a tablet you might leave on a train.
- Chromebook buyers: get more memory than you think you need if you'll use the Linux environment. 8 GB is a sensible minimum for web development.
So, can you?
- Chromebook, light-to-medium projects: yes, locally in the Linux environment, if the hardware is decent. Remote options work too.
- iPad: yes — as a window onto a remote machine. Not as the machine itself.
- Either, with an agent doing the heavy lifting: increasingly, yes, and comfortably.
The device is rarely the limitation any more. Having somewhere reliable, always-on, and properly set up for the code to run is.
EasySpawn gives each project a persistent cloud workspace with Claude Code running in it, reachable from a browser, an iPad, a phone, or SSH — with live preview URLs so you can see the running app from whatever device you're holding. See how it works or join the waitlist.
Related: How to Run Claude Code on a Remote Server · GitHub Codespaces Alternatives in 2026
Keep reading
What Is a Dev Container? devcontainer.json Explained
A dev container defines your development environment as code — the tools, versions, services, and settings a project needs — so it runs the same on every machine and in the cloud. What goes in devcontainer.json, how it differs from a Dockerfile, and where it falls short.
A tmux Cheat Sheet for Long-Running Sessions (and AI Agents)
tmux keeps terminal sessions running after you disconnect — which is exactly what you want for a build, a dev server, or an AI agent working on a remote machine. The twenty commands that cover almost everything, a small config that makes it pleasant, and the habits for running agents inside it.