A more useful terminal UI for long-running Node services

This project grew out of wanting something more practical than raw server output in a plain terminal window. It adds a structured console view, command handling, scrollback, runtime state, and embedding options that make it easier to operate a service while it is actually running.

Open source Node.js 20+ Embedding support

What it adds over plain stdout

In practice, it is a better fit for server runtimes, game backends, and small self-hosted tools where a browser dashboard would be overkill but raw console output is too limiting.

Integration style

The library supports both direct in-process integration and launcher-style embedding for external executables. For Node services, the simplest path is creating a console instance and exposing the resulting API to the runtime.

const { createConsole } = require('tty-console');

const ui = createConsole({
    titleEnabled: true,
    wordWrapEnabled: true,
    prompt: '> '
}).start();

console.log('server started');

There is also a launcher mode for cases where the real runtime is another executable and this console acts as the front-end that forwards input and tails output.

Built-in operational features

Typical use case: keep a service or game server operational from the terminal while still having structured logs, quick commands, and better runtime feedback than standard console output alone.

Browse more projects