npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

markdown-table-prettify

v3.7.0

Published

Transforms markdown tables to be more readable.

Readme

Markdown table prettifier

Test Status Visual Studio Code extension OVSX Docker image NPM package

Makes tables more readable for humans. Compatible with the Markdown writer plugin's table formatter feature in Atom.

Feature highlights

  • Remove redundant ending table border if the beginning has no border, so the table will not end with "|".
  • Create missing ending table border if the beginning already has a border, so the table will end with "|".
  • Save space by not right-padding the last column if the table has no border.
  • Support empty columns inside tables.
  • Support column alignment options with ":".
  • Find and format multiple tables.
  • Support `code blocks` and ignore blocks with <!-- markdown-table-prettify-ignore-start --> and <!-- markdown-table-prettify-ignore-end -->.
  • Support indented tables (tables with borders or tab indented).

Visual Studio Code

feature X

The extension is available for markdown language mode. It can either prettify a selection (Format Selection) or the entire document (Format Document). A VSCode command called Prettify markdown tables is also available to format the currently opened document.

Configurable settings:

  • The maximum texth length of a selection/entire document to consider for formatting. Default: 1M chars (limit does not apply from CLI or NPM).
  • Additional languages to support formatting for besides markdown. See possible configurable values here. Default: [ ].
  • Column padding to make the columns more spaced out from each other. Default: 0 (no extra spacing/padding).
  • Keyboard shortcut to prettify the currently opened markdown document. Default: CTRL+ALT+M (CMD+ALT+M on Mac).

NPM

The core formatting logic is available as an NPM package: npm install --save markdown-table-prettify. The Typescript code is compiled down to ES5 and shipped inside the package.

It currently exposes the entry point also used by the CLI. It can be used from regular NodeJS or web apps:

import { CliPrettify } from 'markdown-table-prettify';
// or
const { CliPrettify } = require('markdown-table-prettify');

console.log(CliPrettify.prettify(
`hello|world
-|-
foo|bar`));
/* Output:
hello | world
------|------
foo   | bar
*/

// specifying a column padding
console.log(CliPrettify.prettify(
`hello|world
-|-
foo|bar`, { columnPadding: 1 }));
/* Output:
 hello  |  world
 ------ | ------
 foo    |  bar
*/

Docker & CLI

The core formatting logic is available as a node docker image: docker pull darkriszty/prettify-md or as a stand alone CLI tool.

Formatting files or checking if they're already formatted is also possible from the command line without docker. This requires node and npm (optionally also npx).

| Feature | Docker | CLI | |---------------------------------------|-------------------------------------------------------------------------------|----------------------------------------------------------------| | Prettify a file | docker container run -i darkriszty/prettify-md < input.md | npm run --silent prettify-md < input.md | | Prettify a file and save the output | docker container run -i darkriszty/prettify-md < input.md > output.md | npm run --silent prettify-md < input.md > output.md | | Check whether a file is pretty or not | docker container run -i darkriszty/prettify-md --check < input.md | npm run --silent check-md < input.md | | Use 1 as column padding | docker container run -i darkriszty/prettify-md --columnPadding=1 < input.md | npm run --silent prettify-md -- --columnPadding=1 < input.md |

Notes:

  • The prettify check (--check or check-md) will fail with an exception and return code 1 if the file is not prettyfied.
  • The --silent switch sets the NPM log level to silent, which is useful to hide the executed file name and concentrate on the actual output.
  • The -- after the npm run script part is needed for npm to forward the arguments (for instance --columnPadding=1) to the actual prettyfier script.
  • Optionally, use npx to prettify files: npx markdown-table-prettify < input.md instead of npm run --silent prettify-md < input.md.

Installation

To access the CLI, the extension can either be used from the Github sources, from the already installed VSCode extension or from NPM.

Compiling from the source code

  • Clone or download the source code.
  • Run npm install.
  • Run npm run compile.

Using the already installed VSCode extension

Locate the installed extension path. The typical location of the installed extension:

  • Windows: %USERPROFILE%\.vscode\extensions\darkriszty.markdown-table-prettify-{version}
  • macOS: ~/.vscode/extensions/darkriszty.markdown-table-prettify-{version}
  • Linux: ~/.vscode/extensions/darkriszty.markdown-table-prettify-{version}

Getting it from NPM

Install the NPM package npm install -g markdown-table-prettify.

Known Issues

  • Tables with mixed character widths (eg: CJK) are not always properly formatted (issue #4).