2.0.2 • Published 2 months ago

gfmt v2.0.2

Weekly downloads
2
License
MIT
Repository
github
Last release
2 months ago

view on npm npm module downloads Gihub repo dependents Gihub package dependents Node.js CI js-standard-style

gfmt

A use-anywhere, github-flavoured-markdown table generator. Useful in markdown generators or for presenting table data in the terminal.

Synopsis

Where example/simple.json looks like this:

[
    { "date": "10 Jun 2015", "downloads": 100 },
    { "date": "11 Jun 2015", "downloads": 120 },
    { "date": "12 Jun 2015", "downloads": 150 },
    { "date": "13 Jun 2015", "downloads": 120 },
    { "date": "14 Jun 2015", "downloads": 110 }
]

this command:

$ cat example/simple.json | gfmt

produces this output:

| date        | downloads |
| ----------- | --------- |
| 10 Jun 2015 | 100       |
| 11 Jun 2015 | 120       |
| 12 Jun 2015 | 150       |
| 13 Jun 2015 | 120       |
| 14 Jun 2015 | 110       |

This command pipes cherry-picked fields from a github repo list into gfmt:

$ curl -s "https://api.github.com/users/jsdoc2md/repos" \
| jq 'map({repo:.name, stars:.stargazers_count, forks:.forks_count, issues:.open_issues_count}) | sort_by(.stargazers_count) | reverse' \
| gfmt

produces this output:

| repo                    | stars | forks | issues |
| ----------------------- | ----- | ----- | ------ |
| jsdoc-to-markdown       | 133   | 20    | 18     |
| jsdoc-parse             | 26    | 8     | 4      |
| jsdoc                   | 0     | 1     | 0      |
| gulp-jsdoc-to-markdown  | 6     | 2     | 0      |
| grunt-jsdoc-to-markdown | 12    | 2     | 1      |
| ddata                   | 0     | 2     | 2      |
| dmd-locale-en-gb        | 0     | 0     | 0      |
| dmd-bitbucket           | 0     | 1     | 0      |
| dmd                     | 13    | 10    | 5      |
| dhtml                   | 0     | 0     | 0      |
| dmd-plugin-example      | 0     | 1     | 0      |

Install

As a library:

$ npm install gfmt --save

As a command-line tool:

$ npm install -g gfmt

Run gfmt --help to see the command-line options.

API Reference

A use-anywhere, github-flavoured-markdown table generator.

gfmTable(data, options) ⇒ string

Get a github-flavoured-markdown table instance

Kind: Exported function

ParamTypeDescription
dataobject | Array.<object>the input data
optionsobject
options.columnsArray.<object>column definitions
options.wrapbooleanwrap to fit into width
options.widthbooleantable width
options.ignoreEmptyColumnsbooleantable width

Example

> gfmt = require("gfmt")
> table = gfmt([
    { "date": "10 Jun 2015", "downloads": 100 },
    { "date": "11 Jun 2015", "downloads": 120 },
    { "date": "12 Jun 2015", "downloads": 150 },
    { "date": "13 Jun 2015", "downloads": 120 },
    { "date": "14 Jun 2015", "downloads": 110 }
])
> console.log(table.getTable())
| date        | downloads |
| ----------- | --------- |
| 10 Jun 2015 | 100       |
| 11 Jun 2015 | 120       |
| 12 Jun 2015 | 150       |
| 13 Jun 2015 | 120       |
| 14 Jun 2015 | 110       |

© 2015-25 Lloyd Brookes \opensource@75lb.com\. Documented by jsdoc-to-markdown.

2.0.2

2 months ago

2.0.1

3 months ago

2.0.0

4 years ago

1.0.0

9 years ago

0.3.2

9 years ago

0.3.1

9 years ago

0.3.0

9 years ago

0.2.3

9 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.3

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago

0.0.0

10 years ago