Need help with TermKit?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

4.5K Stars 264 Forks Other 308 Commits 35 Opened issues


Experimental Terminal platform built on WebKit + node.js. Currently only for Mac and Windows, though the prototype works 90% in any WebKit browser.

Services available


Need anything else?

Contributors list

# 33,611
291 commits
# 24,769
1 commit


TermKit Icon

Goal: next gen terminal / command application

Built out of WebKit and Node.js.

Runs as a desktop app on Mac, Windows and Linux, and can be hacked into any WebKit browser (Chrome, Safari).

Follow TermKit on Twitter for the latest news and updates.

For the background and architecture, please read and comment on:

TermKit 0.3 alpha TermKit 0.3 alpha TermKit 0.3 alpha

Warning: Alpha version, still under development. Nothing works yet.

Some cool features

  • Smart token-based input with inline autocomplete and automatic escaping
  • Rich output for common tasks and formats, using MIME types + sniffing
  • Asynchronous views for background / parallel tasks
  • Full separation between front/back-end

TermKit is not a...

  • ...Web application. It runs as a regular desktop app.
  • ...Scripting language like PowerShell or bash. It focuses on executing commands only.
  • ...Full terminal emulator. It does not aim to e.g. host 'vim'.
  • ...Reimplementation of the Unix toolchain. It replaces and/or enhances built-in commands and wraps external tools.

(but you could make it do most of those things with plug-ins)

How to use:

Detailed instructions are available from these sources:

Unfortunately, TermKit currently requires some assembly.

  1. Install the Mac development tools (Xcode and friends).
  2. Install node.js.
  3. If not covered in #2, install npm:
    curl | sh
  4. Install node-mime:
    npm install mime
  5. Clone the TermKit repository:
    git clone --recursive
  6. Users of older git versions will need to type:
    git submodule update --init
  7. Run the NodeKit daemon:
    cd TermKit/Node; node nodekit.js

Mac: * Unzip and run the Mac app in Build/

Linux: * See Linux/Readme.txt

Tip: Press ⌥⌘C to access the WebKit console.


Preliminary instructions on how to write TermKit native commands can be found here:


TermKit by Steven Wittens (@unconed).

Windows port by James Rhodes (@hachque).

Linux Python/GTK wrapper by Lucas S. Magalhães.


  • “NSImage+QuickLook” by Matt Gemmell (
  • SyntaxHighlighter by Alex Gorbatchev (
  • jQuery and jQuery UI

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.