Blessed ist eine High-Level-Terminal-UI-Bibliothek für Node.js und bringt ncurses-ähnliche Rich-Widgets in modernes JavaScript.
Screen-Initialisierung
const blessed = require('blessed');
const screen = blessed.screen({
smartCSR: true, // Flimmern beim Neuzeichnen des Terminals optimieren
autoPadding: true,
title: 'My Dashboard'
});
screen.append(element);
screen.render();
// Globale Tastaturkürzel zum Beenden behandeln
screen.key(['escape', 'q', 'C-c'], (ch, key) => {
return process.exit(0);
});
UI-Elemente (Box-Widget)
const box = blessed.box({
top: 'center',
left: 'center',
width: '50%',
height: '50%',
content: '{bold}Hello{/bold} Blessed!',
tags: true, // Inline-Formatierungs-Tags aktivieren
border: {
type: 'line' // 'line' oder 'bg'
},
style: {
fg: 'white',
bg: 'magenta',
border: {
fg: '#f0f0f0'
},
hover: {
bg: 'green'
}
}
});
screen.append(box);
Formatierungs-Tags
Wenn tags: true gesetzt ist, werten Elemente Inline-Formatierungen aus:
{bold}...{/bold}: Fetter Text{underline}...{/underline}: Unterstrichener Text{center}...{/center}: Zentrierter Inhalt{right}...{/right}: Rechtsbündiger Text{|}: Horizontales Trennzeichen links/rechts{#c0ff33-fg}...{/}: Eigene Hex-Vordergrundfarbe
Maskieren Sie Tags in Rohstrings mithilfe von blessed.escape(str).