Scramjet for UNIX: Java acceleration for terminal apps

Thumbnails Main applications

Download and License

Hosted on github at, and released under the Apache License, Version 2.0

How it works

Advantages of Scramjet

Using Java and Scramjet for writing command-line tools and terminal applications has some advantages and disadvantages compared to starting a JVM each time or writing in C:

Some features:

Comparison with 'nailgun'

This tool was inspired by nailgun, and has some advantages and disadvantages compared to that tool:

Using as an Eclipse plugin

Scramjet can be built as an Eclipse plugin. When installed in the Eclipse drop-in folder, Eclipse will load it up and then Eclipse effectively becomes a Scramjet server. Normal Scramjet command-line tools run within the Eclipse JVM, with access to the Eclipse classes. This opens up the possibility of writing command-line tools that query or modify the Eclipse data structures, or that automate Eclipse processes. It is even possible to write a curses-style front end to navigate the Eclipse environment.

Writing full-screen terminal apps

Scramjet provides a curses-like library (although obviously with a Java-oriented API) which supports ANSI terminals such as the Linux console, screen and the various terminals for X, including 256-colour support. The bulk of the code is in Java. The only part in C is the code that sets raw input mode, and that detects the terminal size and catches window-resize signals. The interface can be used directly for simple one-page applications, or via the TiledApp interface for multi-paged tiled applications (like editors).

UAZUNextUp- These pages and files, including applets and artwork, are Copyright (c) 1997-2019 Jim Peters unless otherwise stated. Please contact me if you'd like to use anything not explicitly released, or if you have something interesting to discuss.