Millet Porridge

English version of https://corvo.myseu.cn

0%

Upterm Series 2: Support VSCode Web

In the previous blog, I have given the upterm capability to allow VSCode SSH connections. This blog does not contain technical details, I will write another blog to help you understand ssh tunnel reuse.

We all know, VSCode supports running in browser like vscode.dev and github.dev, Which means the devices like iPad or Android tablet could use VSCode.

I’d like to give it more power to support VSCode Web:

In PC, You don’t need to download VSCode, and a browser is enough

In iPad, it works well, the “add to home screen” makes it fit perfectly into the ecosystem

Open Service

1
bash <(curl -sL http://corvo.fun/scripts/upterm-web.sh)

In PC

This is a preload page for large assets. When it finishes, you could click the button to enter the VSCodeWeb.

I suggest you add this page to your home screen, which you can do by following the instructions below.

Edge support

Chrome support

VSCodeWeb

All functions are available in VSCodeWeb.

Open a Terminal.

In iPad

There are two ways to access VSCodeWeb in iPad:

  1. Copy url to safari:

  1. scan QR code:

iPad desktop

This is only available in safari. I strongly recommend using it because I’ve changed code a lot to make it feel better.

iPad desktop panorama

In my opinion, it is the best ssh client for iPad, much better than termius, not to mention its support for VSCode. I don’t have Magic keyboard, so I just use Bluetooth keyboard to test.

ESC is working properly when you change the mode to Win, which is especially suitable for Vim users.

Maybe it is an extension of the iPad’s code productivity.

Function optimization

  1. The loading of static files is very slow, maybe a few dozen seconds, so I had to write a separate loading page. We need CDN
  2. A little latency problem. I think it caused by server location
  3. Port forward is already worked, but we need to let user know that
  4. Provided the admin page for user to control their own service
  5. Pair programming? a single VSCodeWeb server is realy suitable for pair programming
  6. If we can vscode.dev or github.dev as our frontend, it would save a lot of loading time

Relation with Gitpod

There are some differences between upterm and Gitpod.

  • upterm has a more open and underlying functionality. it could be used as an underlying implementation of Gitpod, it doesn’t provide machines for users, nor does it require you to be logged into a Github account
  • Gitpod is a SaaS platform, which provides Pod to host your code.