# coder/sshcode

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/coder-sshcode).**

5,706 stars · 212 forks · Go · MIT · archived

## Links

- GitHub: https://github.com/coder/sshcode
- awesome-repositories: https://awesome-repositories.com/repository/coder-sshcode.md

## Description

sshcode is a tool for deploying remote IDEs that installs and runs a VS Code editor on a remote server over SSH for browser-based access. It functions as an SSH remote IDE deployer and tunneling proxy, routing the remote editor instance to a local browser port via secure shell encrypted tunnels.

The system synchronizes local editor settings and extensions to a remote server to ensure consistent development environments. This includes backing up and transferring user configurations between local machines and remote filesystems.

The project manages the full lifecycle of remote development, including the distribution of server binaries, remote process orchestration, and the synchronization of filesystem-based settings. It enables remote filesystem code editing by managing the connection and environment consistency across distributed machines.

## Tags

### Networking & Communication

- [Remote VS Code Servers](https://awesome-repositories.com/f/networking-communication/remote-instance-connectors/code-server-instance-connectors/remote-vs-code-servers.md) — Hosts a full Visual Studio Code editor on a remote server for browser-based remote development. ([source](https://github.com/coder/sshcode/blob/master/go.mod))
- [Local Port Forwarding](https://awesome-repositories.com/f/networking-communication/network-port-forwarding/local-port-forwarding.md) — Forwards connections from a local browser port to a remote editor endpoint through an SSH tunnel.
- [SSH Tunneling Forwarders](https://awesome-repositories.com/f/networking-communication/unix-domain-socket-support/tunneled-unix-socket-forwarding/ssh-tunneling-forwarders.md) — Tunnels the remote editor instance's TCP traffic to a local browser port using an encrypted SSH connection.

### Development Tools & Productivity

- [Configuration Syncing](https://awesome-repositories.com/f/development-tools-productivity/local-file-syncing/remote-repository-syncing/configuration-syncing.md) — Synchronizes editor settings and extension files between local and remote environments to maintain consistency.
- [Remote Editing Tools](https://awesome-repositories.com/f/development-tools-productivity/remote-editing-tools.md) — Provides utilities for accessing and modifying files on remote servers directly through a full-featured editor.
- [Remote Configuration Synchronization](https://awesome-repositories.com/f/development-tools-productivity/remote-file-synchronization/remote-configuration-synchronization.md) — Synchronizes local editor configuration files and extensions with the remote server. ([source](https://github.com/coder/sshcode/blob/master/README.md))
- [Binary Distribution](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-orchestration-logic/build-orchestration-configuration/build-automation-systems/build-systems/binary-compilation-toolchains/server-binary-compilers/binary-distribution.md) — Provides mechanisms for synchronizing compiled editor binaries to target server directories for execution.
- [Post-Session State Backups](https://awesome-repositories.com/f/development-tools-productivity/remote-session-terminals/session-synchronization/post-session-state-backups.md) — Backs up modifications made to the remote editor by transferring updated settings back to the local machine.

### DevOps & Infrastructure

- [Remote Application Lifecycle Management](https://awesome-repositories.com/f/devops-infrastructure/process-grouping-utilities/remote-application-lifecycle-management.md) — Installs and manages the lifecycle of a code editor instance running on a remote server via SSH commands.
- [IDE Deployers](https://awesome-repositories.com/f/devops-infrastructure/ssh-deployment-tools/ide-deployers.md) — Installs and runs a VS Code editor on a remote server over SSH for browser-based access.
- [Binary Deployment Managers](https://awesome-repositories.com/f/devops-infrastructure/deployment-management/installation-package-management/binary-and-source-installation/remote-binary-updaters/binary-deployment-managers.md) — Uploads local editor binaries to a remote server or downloads the latest versions from a remote source. ([source](https://github.com/coder/sshcode/blob/master/sshcode.go))

### Software Engineering & Architecture

- [Remote Development Environments](https://awesome-repositories.com/f/software-engineering-architecture/client-server-architectures/remote-development-environments.md) — Synchronizes the local user interface with a remote server to maintain a consistent development environment.

### Operating Systems & Systems Programming

- [SSH Remote Development Editors](https://awesome-repositories.com/f/operating-systems-systems-programming/ssh-remote-login-controls/ssh-file-editors/ssh-remote-development-editors.md) — Launches a persistent editor on a remote machine via SSH with access through a local web browser.
