Welcome!
Terminal 7 is a terminal multiplexer with full gesture support. With Terminal 7, you can swipe to split a pane, tap it with two fingers to zoom and more (gestures for a complete list). tmux is our inspiration and we strive to support as many of its functions and features as possible.
The code here is mainly ES6 with no framworks. We do use the following projects:
- cordova for app packaging
- xterm.js for terminal emulation
- webpack to package the source (do we really need it?)
- karma, mocha & chai for tests.
For networking we use WebRTC, the web standard protocol for real time communications. It's a UDP based web-era protocol with wide support and a great implmentation in go - webrtc - that we use as a base for our server's daemon.
Just clone this repo and run npm i
. In your server you'll need to install
and run our backend project - webexec
To start terminal 7 in the browser use:
npm run dev
and point your browser at http://localhost:3333
Terminal7 adds a global window.terminal7
you can use in the debugger.
We welcome bug reports as well as ideas for new features. If you are ready to code yourslef, follow these steps:
- Fork it
- Clone it
npm i
- Create your feature branch (git branch my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create new Pull Request
Please run npm test
before pushing.