Create boxes in the terminal

$ npm install boxen
const boxen = require('boxen');
console.log(boxen('unicorn', {padding: 1}));
/*
┌─────────────┐
│ │
│ unicorn │
│ │
└─────────────┘
*/
console.log(boxen('unicorn', {padding: 1, margin: 1, borderStyle: 'double'}));
/*
╔═════════════╗
║ ║
║ unicorn ║
║ ║
╚═════════════╝
*/
Type: string
Text inside the box.
Type: object
Type: string\
Values: 'black' 'red' 'green' 'yellow' 'blue' 'magenta' 'cyan' 'white' 'gray' or a hex value like '#ff0000'
Color of the box border.
Type: string | object\
Default: 'single'\
Values:
- 'single' ┌───┐ │foo│ └───┘
- 'double' ╔═══╗ ║foo║ ╚═══╝
- 'round' ('single' sides with round corners) ╭───╮ │foo│ ╰───╯
- 'bold' ┏━━━┓ ┃foo┃ ┗━━━┛
- 'singleDouble' ('single' on top and bottom, 'double' on right and left) ╓───╖ ║foo║ ╙───╜
- 'doubleSingle' ('double' on top and bottom, 'single' on right and left) ╒═══╕ │foo│ ╘═══╛
- 'classic' +---+ |foo| +---+
Style of the box border.
Can be any of the above predefined styles or an object with the following keys:
{
topLeft: '+',
topRight: '+',
bottomLeft: '+',
bottomRight: '+',
horizontal: '-',
vertical: '|'
}
Type: boolean\
Default: false
Reduce opacity of the border.
Type: number | object\
Default: 0
Space between the text and box border.
Accepts a number or an object with any of the top, right, bottom, left properties. When a number is specified, the left/right padding is 3 times the top/bottom to make it look nice.
Type: number | object\
Default: 0
Space around the box.
Accepts a number or an object with any of the top, right, bottom, left properties. When a number is specified, the left/right margin is 3 times the top/bottom to make it look nice.
Type: string\
Default: 'left'\
Values: 'right' 'center' 'left'
Float the box on the available terminal screen space.
Type: string\
Values: 'black' 'red' 'green' 'yellow' 'blue' 'magenta' 'cyan' 'white' 'gray' or a hex value like '#ff0000'
Color of the background.
Type: string\
Default: 'left'\
Values: 'left' 'center' 'right'
Align the text in the box based on the widest line.