2.0.0 • Published 3 years ago

gfmt v2.0.0

Weekly downloads
2
License
MIT
Repository
github
Last release
3 years ago

view on npm npm module downloads Gihub repo dependents Gihub package dependents Build Status 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-21 Lloyd Brookes \75pound@gmail.com\. Documented by jsdoc-to-markdown.

2.0.0

3 years ago

1.0.0

8 years ago

0.3.2

8 years ago

0.3.1

8 years ago

0.3.0

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.3

9 years ago

0.1.2

9 years ago

0.1.1

9 years ago

0.1.0

9 years ago

0.0.0

9 years ago