~/tools/code-server
tool

code-server

code-server is an open source tool that runs Visual Studio Code on a remote machine and serves the full editor in your browser — a self-hosted GitHub Codespaces alternative that lets you code from any device against a server's CPU, memory, and files.

What is code-server?

code-server is an open source tool that runs the full Visual Studio Code editor on a remote Linux machine and serves it to your web browser. Maintained by Coder, it lets you keep your code, extensions, and terminal on a server while working from any device — laptop, tablet, or Chromebook — over a normal browser tab.

What is code-server best for?

code-server suits developers who want a consistent environment that lives on a server rather than on each device. It’s a strong fit for offloading heavy builds, tests, and downloads to a powerful remote box, keeping source code off client machines for security, coding from low-powered or locked-down devices, and giving a home-lab or small team browser-based VS Code without a SaaS subscription.

What can code-server do?

  • Serve the complete VS Code UI — editor, integrated terminal, debugger, and settings — over HTTP/WebSockets in any modern browser.
  • Run your workspace on remote CPU and memory, so builds and tests use the server’s resources, not your laptop’s.
  • Install extensions from the Open VSX registry, or side-load them from .vsix files.
  • Deploy several ways: a one-line install script, manual install, Docker, a devcontainer, or one-click cloud provider setups.
  • Persist your files, dotfiles, and configuration on the server between sessions and across devices.
  • Sit behind your own reverse proxy with TLS and password or proxy authentication.

Where does code-server fall short?

  • No Microsoft extension marketplace. Microsoft restricts its VS Code Marketplace to official Microsoft products, so code-server pulls from the Open VSX registry instead. Popular extensions like the C/C++ tools, Pylance, and the official Remote/Live Share and Dev Containers extensions aren’t available there — you install alternatives or side-load VSIX files.
  • Single-user by design. code-server serves one VS Code instance; it has no built-in per-user provisioning, teams, or workspace orchestration. For multi-user, on-demand environments Coder points you to its separate Coder platform.
  • Linux server only. The server component runs on Linux (WebSockets required); there’s no native Windows or macOS server build, though you reach it from any OS’s browser.

Is code-server free?

Yes — code-server is fully free and open source under the MIT license, with no paid tier, seat limits, or feature gates. Your only cost is the machine you run it on. Coder’s separate enterprise platform (coder/coder) is a different product with its own licensing.

What does code-server replace?

code-server is a self-hosted stand-in for managed browser IDEs. It covers much of what you’d use GitHub Codespaces, AWS Cloud9, or Replit for — an in-browser editor backed by remote compute — but on your own server, with no per-hour billing and your code staying on infrastructure you control.

FAQ

Is code-server open source? Yes. code-server is released under the permissive MIT license on GitHub, free to use, modify, and self-host.

Can I self-host code-server for free? Yes. There’s no paid edition — you install it on any Linux server (minimum ~1 GB RAM and 2 vCPUs) and pay only for that machine.

Is code-server a good GitHub Codespaces alternative? For a single developer or a home lab, yes — you get browser-based VS Code on your own box without per-hour compute billing. For provisioning many on-demand environments across a team, Coder’s full platform fits better.

Does code-server support VS Code extensions? Most, but not all. Extensions come from the Open VSX registry rather than Microsoft’s marketplace, so some Microsoft-published extensions are unavailable; you can side-load those from .vsix files.

What do I need to run code-server? A Linux machine with WebSockets support, at least 1 GB RAM, and 2 vCPUs, plus a browser to connect. A reverse proxy with TLS is recommended for remote access.