|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187 |
- # boxen [](https://travis-ci.org/sindresorhus/boxen)
-
- > Create boxes in the terminal
-
- 
-
- ## Install
-
- ```
- $ npm install boxen
- ```
-
- ## Usage
-
- ```js
- const boxen = require('boxen');
-
- console.log(boxen('unicorn', {padding: 1}));
- /*
- ┌─────────────┐
- │ │
- │ unicorn │
- │ │
- └─────────────┘
- */
-
- console.log(boxen('unicorn', {padding: 1, margin: 1, borderStyle: 'double'}));
- /*
-
- ╔═════════════╗
- ║ ║
- ║ unicorn ║
- ║ ║
- ╚═════════════╝
-
- */
- ```
-
- ## API
-
- ### boxen(text, options?)
-
- #### text
-
- Type: `string`
-
- Text inside the box.
-
- #### options
-
- Type: `object`
-
- ##### borderColor
-
- Type: `string`\
- Values: `'black'` `'red'` `'green'` `'yellow'` `'blue'` `'magenta'` `'cyan'` `'white'` `'gray'` or a hex value like `'#ff0000'`
-
- Color of the box border.
-
- ##### borderStyle
-
- 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:
-
- ```js
- {
- topLeft: '+',
- topRight: '+',
- bottomLeft: '+',
- bottomRight: '+',
- horizontal: '-',
- vertical: '|'
- }
- ```
-
- ##### dimBorder
-
- Type: `boolean`\
- Default: `false`
-
- Reduce opacity of the border.
-
- ##### padding
-
- 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.
-
- ##### margin
-
- 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.
-
- ##### float
-
- Type: `string`\
- Default: `'left'`\
- Values: `'right'` `'center'` `'left'`
-
- Float the box on the available terminal screen space.
-
- ##### backgroundColor
-
- Type: `string`\
- Values: `'black'` `'red'` `'green'` `'yellow'` `'blue'` `'magenta'` `'cyan'` `'white'` `'gray'` or a hex value like `'#ff0000'`
-
- Color of the background.
-
- ##### align
-
- Type: `string`\
- Default: `'left'`\
- Values: `'left'` `'center'` `'right'`
-
- Align the text in the box based on the widest line.
-
- ## Related
-
- - [boxen-cli](https://github.com/sindresorhus/boxen-cli) - CLI for this module
- - [cli-boxes](https://github.com/sindresorhus/cli-boxes) - Boxes for use in the terminal
- - [ink-box](https://github.com/sindresorhus/ink-box) - Box component for Ink that uses this package
-
- ---
-
- <div align="center">
- <b>
- <a href="https://tidelift.com/subscription/pkg/npm-boxen?utm_source=npm-boxen&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
- </b>
- <br>
- <sub>
- Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
- </sub>
- </div>
|