Skip to content

A Node.js library for pretty printing your data on the terminal🎨

License

Notifications You must be signed in to change notification settings

larswaechter/voici.js

Repository files navigation

voici.js

A Node.js library for pretty printing your data on the terminal🎨

npm version GitHub license Documentation Tests Linter

📍 Introduction

voici.js (speak: /vwasi/) is an open source Node.js library written in TypeScript for beautifully displaying datasets in tabular form on the terminal, including features like:

  • Text & column & row styling
  • Highlighting & filtering
  • Dynamic columns
  • Column sizing
  • Accumulation
  • Table export
  • Type System
  • Sorting

and many more!

Check out the GitBook for more features or create an issue if you're missing one.

💻 Installation

Install via npm:

npm i --save voici.js

🔨 Usage

import { Table } from 'voici.js';

const data = [
  { firstname: 'Homer', lastname: 'Simpson', age: 39 },
  { firstname: 'Marge', lastname: 'Simpson', age: 36 },
  { firstname: 'Bart', lastname: 'Simpson', age: 10 },
  { firstname: 'Lisa', lastname: 'Simpson', age: 8 },
  { firstname: 'Maggie', lastname: 'Simpson', age: 1 }
];

const table = new Table(data);
table.print();

The console output:

  firstname    lastname    age
================================
  Homer        Simpson     39
  Marge        Simpson     36
  Bart         Simpson     10
  Lisa         Simpson     8
  Maggie       Simpson     1

You can find many more examples here.

📚 Documentation

The following documentations are available:

Otherwise check out the tests for more examples.

🧩 Contributing

Any contribution is appreciated! See CONTRIBUTING.md

🔑 License

voici.js is released under MIT license.