Web SSH Client using ssh2, socket.io, xterm.js, and express. webssh webssh2
In this release, we're trying our best to conform to the Airbnb Javascript Style Guide. I'm hoping this will make contributions easier and keep the code readable. I love shortcuts more than anyone but I've found when making changes to code I've not looked at in a while, it can take me a few momements to deconstruct what was being done due to readbility issues. While I don't agree with every decision in the style guide (semi-colons, yuk), it is a good base to keep the code consistent.
If you've not used it before, I recommend installing the vscode extensions for that and Prettier and getting familiar. The autocorrections are great (especially if you hate dealing with semi-colons...)
As of 0.4.0-testing-0, the client code is written in TypeScript. It's not that much different from JavaScript, and the introduction strong typing will ultimately help to produce better code. Eventually we want to move the whole project to TypeScript but that make take a bit more time. Take a moment to look at ./app/client/src/js/index.ts to see what TypeScript looks like.
This version should be the last one to support less than node 10. When possible we will continue to update the 0.3.x branch, however it's becoming increasingly difficult to maintain compatibility as most modules are moving past supporting these older versions.
Please note the build environment requires at least node 10 to work properly.
config.json
are currently permissive http.origins: ["*:*"]
please note that if a config.json
is not present, the default is `http.origins: ["localhost:2222"]config.json.sample
: allowreauth
now defaults to false
fixes #238config.json.sample
: allowreauth
now defaults to false
fixes #238serve-favicon
to serve favicon from root if pre-fetched by browserlink rel=icon
line in client.htm to serve favico.ico out of /ssh/Testing for ssh subnet restrictions
server/app.js
See issue #135
npm run (build|builddev)