I don’t code on mobile often, but when I do I tend to just use (neo)vim over ssh, on an ssh client that has control and escape keys. I wouldn’t suggest anyone learn vim these days unless they really want to, but it does work very well with a limited keyboard and screen.
I suppose it’s very different from vscode, but it definitely is more compatible.
For me this is absolutely a solved problem.
For editing code, etc., I use VS Code Remoting. https://code.visualstudio.com/docs/remote/ssh if you’re willing to use VSCode instead of something like Gedit, you can just give it an ssh login and it will download and run a headless version of itself on the remote machine.
Between that and syncing my config and extensions (which I was very reluctant to do but am glad I did), I have the same coding environment everywhere with the same file system, so long as I can ssh.
You mentioned you need graphical app support too, though. I recommend xRDP. I just installed it on a VPS, and it’s easily 2-3x as fast as the fastest VNC I could set up. Chromium and Firefox run so smoothly I was almost able to watch a YouTube video (though my CPU was pegged, of course…). It’s super simple to use, too.
The default config is pretty good, though you’ll want to edit the default pam.d file if you rely on automatically unlocking the login keychain, and I connect through ssh port tunneling because I don’t feel super comfortable leaving a graphical login screen open. (It’s its own login prompt, not something like XDMCP)
You can use any ssh command option (including -w) with autossh.
-w creates
tap
devices on the server and client, and connects them together. Both sides get a private IP address.