sindresorhus/widest-line

Get the visual width of the widest line in a string - the number of columns required to display it

40

stars

26

commits

JavaScript

primary language

Jan 24, 2026

updated

Browse cluster: CLI string width and terminal formatting

README

widest-line

Get the visual width of the widest line in a string - the number of columns required to display it

Some Unicode characters are fullwidth and use double the normal width. ANSI escape codes are stripped and doesn't affect the width.

Useful to be able to know the maximum width a string will take up in the terminal.

Install

npm install widest-line

Usage

import widestLine from 'widest-line';

widestLine('古\n\u001B[1m@\u001B[22m');
//=> 2

Contributors

sindresorhus

20 commits

BendingBender

2 commits

coreyfarrell

2 commits

Richienb

1 commits

sindresorhus/widest-line

Get the visual width of the widest line in a string - the number of columns required to display it

40

stars

26

commits

JavaScript

primary language

Jan 24, 2026

updated

Browse cluster: CLI string width and terminal formatting

README

widest-line

Get the visual width of the widest line in a string - the number of columns required to display it

Some Unicode characters are fullwidth and use double the normal width. ANSI escape codes are stripped and doesn't affect the width.

Useful to be able to know the maximum width a string will take up in the terminal.

Install

npm install widest-line

Usage

import widestLine from 'widest-line';

widestLine('古\n\u001B[1m@\u001B[22m');
//=> 2

Contributors

sindresorhus

20 commits

BendingBender

2 commits

coreyfarrell

2 commits

Richienb

1 commits

Languages

JavaScript

100.0%