diff --git a/README.md b/README.md index bbd65450..dc56a88b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# code-server [!["Latest Release"](https://img.shields.io/github/release/cdr/code-server.svg)](https://github.com/cdr/code-server/releases/latest) [![MIT license](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/cdr/code-server/blob/master/LICENSE) [![Discord](https://img.shields.io/discord/463752820026376202.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2)](https://discord.gg/zxSwN8Z) +# code-server · [![MIT license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/cdr/code-server/blob/master/LICENSE) [!["Latest Release"](https://img.shields.io/github/release/cdr/code-server.svg)](https://github.com/cdr/code-server/releases/latest) [![Build Status](https://img.shields.io/travis/com/cdr/code-server/master)](https://github.com/cdr/code-server) `code-server` is [VS Code](https://github.com/Microsoft/vscode) running on a remote server, accessible through the browser. @@ -8,12 +8,12 @@ Try it out: docker run -it -p 127.0.0.1:8443:8443 -v "$PWD:/home/coder/project" codercom/code-server ``` -- Code on your Chromebook, tablet, and laptop with a consistent dev environment. - - If you have a Windows or Mac workstation, more easily develop for Linux. -- Take advantage of large cloud servers to speed up tests, compilations, downloads, and more. -- Preserve battery life when you're on the go. - - All intensive computation runs on your server. - - You're no longer running excess instances of Chrome. +- **Consistent environment:** Code on your Chromebook, tablet, and laptop with a + consistent dev environment. develop more easily for Linux if you have a + Windows or Mac, and pick up where you left off when switching workstations. +- **Server-powered:** Take advantage of large cloud servers to speed up tests, + compilations, downloads, and more. Preserve battery life when you're on the go + since all intensive computation runs on your server. ![Screenshot](/doc/assets/ide.gif) @@ -22,8 +22,7 @@ docker run -it -p 127.0.0.1:8443:8443 -v "$PWD:/home/coder/project" codercom/cod Use [sshcode](https://github.com/codercom/sshcode) for a simple setup. ### Docker -See docker oneliner mentioned above. Dockerfile is at -[/Dockerfile](/Dockerfile). +See the Docker one-liner mentioned above. Dockerfile is at [/Dockerfile](/Dockerfile). To debug Golang using the [ms-vscode-go extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.Go), @@ -32,8 +31,8 @@ arguments when launching code-server with Docker. See [#725](https://github.com/cdr/code-server/issues/725) for details. ### Binaries -1. [Download a binary](https://github.com/cdr/code-server/releases) (Linux and - OS X supported. Windows coming soon). +1. [Download a binary](https://github.com/cdr/code-server/releases). (Linux and + OS X supported. Windows coming soon) 2. Unpack the downloaded file then run the binary. 3. In your browser navigate to `localhost:8443`. @@ -41,10 +40,9 @@ arguments when launching code-server with Docker. See - For hosting on cloud platforms see [doc/deploy.md](doc/deploy.md). ### Build -- If you also plan on developing, set the `OUT` environment variable: - `export OUT=/path/to/some/directory`. Otherwise it will build in this - directory which will cause issues because `yarn watch` will try to - compile the build directory as well. +- If you also plan on developing, set the `OUT` environment variable. Otherwise + it will build in this directory which will cause issues because `yarn watch` + will try to compile the build directory as well. - For now `@coder/nbin` is a global dependency. - Run `yarn build ${codeServerVersion} ${vscodeVersion} ${target} ${arch}` in this directory (for example: `yarn build development 1.36.0 linux x64`). @@ -68,10 +66,10 @@ arguments when launching code-server with Docker. See - Run VS Code unit tests against our builds to ensure features work as expected. ## Extensions -At the moment we can't use the official VSCode Marketplace. We've created a +At the moment we can't use the official VS Code Marketplace. We've created a custom extension marketplace focused around open-sourced extensions. However, you can manually download the extension to your extensions directory. It's also -possible to host your own marketplace by setting the `SERVICE_URL` and +possible to set your own marketplace URLs by setting the `SERVICE_URL` and `ITEM_URL` environment variables. ## Telemetry @@ -106,23 +104,23 @@ the patch in the VS Code source, then run `yarn patch:generate` in this directory. Our changes include: - - Add a `code-server` schema. - - Make the extension sidebar work in the browser. Mostly involves removing - Node-specific code for the `extensions` channel client and adding a - `gallery` channel. - - Allow multiple extension directories (both user and built-in). - - Rewrite assets used in the CSS (like icons) or as images to use the base URL. - - Change the loader to use the base URL. - - Change the web socket to use the base URL and TLS if necessary. - - Set the favicon using a relative path. - - Modify the file service to support writing from an asynchronous stream (for - uploading files). - - Add a file prefix to ignore for temporary files created during upload. - - Insert our upload service for use in editor windows and explorer. - - Modify the log level to get its initial setting from the server. - - Get telemetry working by adding a channel for it. - - Change a regular expression used for mnemonics so it works on Firefox. - - Make it possible for us to load code on the client. +- Add a `code-server` schema. +- Make the extension sidebar work in the browser. Mostly involves removing + Node-specific code for the `extensions` channel client and adding a + `gallery` channel. +- Allow multiple extension directories (both user and built-in). +- Rewrite assets used in the CSS (like icons) or as images to use the base URL. +- Change the loader to use the base URL. +- Change the web socket to use the base URL and TLS if necessary. +- Set the favicon using a relative path. +- Modify the file service to support writing from an asynchronous stream (for + uploading files). +- Add a file prefix to ignore for temporary files created during upload. +- Insert our upload service for use in editor windows and explorer. +- Modify the log level to get its initial setting from the server. +- Get telemetry working by adding a channel for it. +- Change a regular expression used for mnemonics so it works on Firefox. +- Make it possible for us to load code on the client. ## License [MIT](LICENSE)