Quine's fork of "Hyper" by Vercel, A terminal built on web technologies
Find a file
Johan Brook bfefc2d74e Add close cross for tabs (#58)
* Add .DS_Store to gitignore

* Add SVG icon component

* Add button for closing a tab (re: #40)

* Use external icon sheet for icons
2016-07-06 16:39:26 -07:00
app Add close cross for tabs (#58) 2016-07-06 16:39:26 -07:00
static add static icon, move icons to static folder 2016-07-04 19:45:12 -07:00
.gitignore Add close cross for tabs (#58) 2016-07-06 16:39:26 -07:00
HISTORY.md Release 0.3.1 2016-07-04 21:01:02 -07:00
index.js move menu into its own file 2016-07-04 19:46:24 -07:00
install.sh install all deps 2016-07-01 16:16:26 -07:00
menu.js menu: fix authorship 2016-07-05 13:43:49 -07:00
package.json Release 0.3.1 2016-07-04 21:01:02 -07:00
package.sh add static icon, move icons to static folder 2016-07-04 19:45:12 -07:00
README.md Make clear where to run npm start (#19) 2016-07-02 15:19:37 -07:00
rpc.js initial commit 2016-06-30 23:01:04 -07:00
session.js Implement hterm (#28) 2016-07-03 13:35:45 -07:00

hyperterm

Contribute

To install package.json dependencies in a way where the native modules are built with electron, run:

$ ./install.sh

Then, you want to make sure app/dist is populated. I recommend running webpack with --watch so that any changes you make to the app are detected.

$ cd app/
$ npm install
$ webpack --watch

Then you can run in the main directory:

$ npm start

...to launch the app!

TODO

  • Warn upon quit
  • Implement memory for tab navigation like in Chrome
  • Clone pwd when opening a new tab (as the first plugin?)
  • Implement cmd+K to clear
  • Listen on resize event coming from the pty.
  • Make sure all popular shells work well, and that we detect "url commands" appropriately for them.
  • Figure out process title extraction on other platforms.
  • Define extensibility surface and APIs
  • Define approach to conf management (~/.hyperterm.json ?)
  • When webview is shown, replace title of tab with webview's title
  • Linkify urls in stdout. If clicked, inline webview. If cmd+clicked, default browser.
  • Show icon that triggers contextmenu in tab, when hovered.
    • "Open in default browser" option in webview mode
    • Close
  • Test on Windows, Linux
  • Investigate startup time improvements
    • Optimistic (mosh-style) prompt that memoizes PS1
    • Smaller bundle (ie: uglify, but currently doesnt work with ES6)
    • Inline all the CSS/JS in the page instead of extra file