{"_id":"cliff","_rev":"45-e071f3bf2ec17cad9ec1b3ebe50d611e","name":"cliff","description":"Your CLI formatting friend.","dist-tags":{"latest":"0.1.10"},"versions":{"0.1.0":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.0","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.2.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_id":"cliff@0.1.0","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.8","_defaultsLoaded":true,"dist":{"shasum":"5a9097b26e548199507e3aed42cb761916a9b90a","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.0.tgz","integrity":"sha512-9RmTEeJLxfcm8Gg/joduj4jn219dzq3vhBlTE8C/+Q8otrKQXzzXpd4SMrSwEcwuDsxvtROf7Cz7Fx7C7KTSOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwfeniiI/ksvUkhf8nIK7GZeNiCKnVuuDktDs40KTgzQIgYnahLN4xkPete5Y6G89qqpoCiDb7qVX65gDGdBDt72s="}]},"directories":{}},"0.1.1":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.1","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.2.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_id":"cliff@0.1.1","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.8","_defaultsLoaded":true,"dist":{"shasum":"170a079ee055a8cd0416282ac725f10d1ca6201b","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.1.tgz","integrity":"sha512-iI93fPNMwxwxu5Dm3+YPSBuZg/OI0/0CUjnH/yntcbOUzTyj6fqX0IuLOqWiE29IhBmVpc7JawUoFSCkC/QzMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDLmb1A62mxYQPiezy+V76fwkZmr1hkl6ixVMcIqGb+KgIgB8YXPT+P9zt+wSVqr7kVnAEEBjWBRbc9b/wdSGblFy0="}]},"directories":{}},"0.1.2":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.2","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.3.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_id":"cliff@0.1.2","_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.4.8","_defaultsLoaded":true,"dist":{"shasum":"a8ade9fe923222017d26741e4cca1e5b421348bc","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.2.tgz","integrity":"sha512-v7wQw6rqCMzqcp7jnW8eeUeLlo21WEu+ndpWSVWeqdr8O2pTHYbLO3hwBQXFz1v5b1Nn+SIrShn+HbE56f5pLQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDdSLOVX3JqbfrdGoLsgDsXUNxq2pJ7ngkniWd/KknswIgSP50lNnlXIHwcyLkxU8JV1JjxvnMdv4QG6SGNu+CCdA="}]},"directories":{}},"0.1.3":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.3","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.3.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_id":"cliff@0.1.3","_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.4.8","_defaultsLoaded":true,"dist":{"shasum":"9a3573030e3f50f1afdaeb14bb99860f8ddb6c90","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.3.tgz","integrity":"sha512-MmjTvnGjJnnQYC7t2/6Gh8kf9XtvRzcChw8ruqr/k3p0wS6Y4UOUpEIL4aHdRxWI9juBcIsqrbAHOItj14iH3Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHtfq0U8B7AA6sXoZK+ruAWmJngXI9osuRuBYfUa2ps1AiEA0gOiDyYtJLS2cOcgbcerGiVZSfuOir5aSknK5aPF+w0="}]},"directories":{}},"0.1.4":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.4","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.4.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_npmJsonOpts":{"file":"/Users/Charlie/.npm/cliff/0.1.4/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"cliff@0.1.4","_engineSupported":true,"_npmVersion":"1.0.23","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"21e42c66e09c0bd7dca795ffcc11f68b95cbd2d1","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.4.tgz","integrity":"sha512-rT3ctm16r3V/pHXq2UqH6PsGZZA1arwPP+9YQNcAuJM2fNSStrElVB4xvfST7jxU2/pHT+uDuhdv4kFt9n3Vpw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkkCn9T1iJolAKkhOnULdnqXs6sBR5SM/latmEV+k4XQIhAI1gUpQj+sAt2z8YC7IPdkT/PRNhj5J24oAdzYzKKa7z"}]},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"marak","email":"marak.squires@gmail.com"},{"name":"nicoreed","email":"dev@nicoreed.com"}],"directories":{}},"0.1.5":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.5","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.5.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_npmJsonOpts":{"file":"/Users/Charlie/.npm/cliff/0.1.5/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"cliff@0.1.5","_engineSupported":true,"_npmVersion":"1.0.23","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"d515a5801f16b712c45607711da05bae70327058","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.5.tgz","integrity":"sha512-J2KfWQvDOGQy0G0FYJcFlQkk+v0kI2PJtl55cieW5uNOZU6I/VpixFHQ8swdQKhCkXXEambIFUTVR5+CHoe9iQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVQ/VwhUb7N37HGcOk/mfOSQAHted5p/U2V/E8fZQekwIgJ8965SsWa1ZWbIHk8nBOK0jbylLkgTSfDGtTArJNzRg="}]},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"marak","email":"marak.squires@gmail.com"},{"name":"nicoreed","email":"dev@nicoreed.com"}],"directories":{}},"0.1.6":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.6","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/nodejitsu/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.5.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"_id":"cliff@0.1.6","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-2","_nodeVersion":"v0.6.7","_defaultsLoaded":true,"dist":{"shasum":"19cc9bf18bbae80d661b65e5dc8c7188f1efa54e","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.6.tgz","integrity":"sha512-AEe0i0/mLCXgnYJAG8UhHGz1Ws/F7W8hK0ql/tYeUdGUVHaXp0ZatZhNF5EqqjLQp2n0IUv+HRbylIiOCpdlBQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDLmRo9O5iGXj9fc1gZvZK//8eqDdieIJWv8XWN7tXo7AiAJllaqEVoRWcmTcfLlyQFKlvV+nhGouMygpKkClXII4A=="}]},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"marak","email":"marak.squires@gmail.com"},{"name":"nicoreed","email":"dev@nicoreed.com"}],"directories":{}},"0.1.7":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.7","author":{"name":"Nodejitsu","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/flatiron/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.5.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"_id":"cliff@0.1.7","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-2","_nodeVersion":"v0.6.7","_defaultsLoaded":true,"dist":{"shasum":"9b41d84d9f09be12b698d8617501548a10957a37","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.7.tgz","integrity":"sha512-PPGNnAju/u2iWLWWTEdJCzt3meZiuAbyL7EAPwpTmtFifwuYxQ4gJ/NJFk7eNGeN26o97EMW7U6dWSEJnzdv2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBgBtb75DUoSOdrKuDmIcVckP4bSSuE9k+WF2NGlk6FvAiA43AEAnwqmEqCHXPTbKAlZYgygSbZ042aMBe+TVeQpGQ=="}]},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"marak","email":"marak.squires@gmail.com"},{"name":"nicoreed","email":"dev@nicoreed.com"}]},"0.1.8":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.8","author":{"name":"Nodejitsu Inc.","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"git://github.com/flatiron/cliff.git"},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"marak","email":"marak.squires@gmail.com"},{"name":"nicoreed","email":"dev@nicoreed.com"}],"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.6.x"},"devDependencies":{"vows":"0.5.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"_id":"cliff@0.1.8","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.2","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"43ca8ad9fe3943489693ab62dce0cae22509d272","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.8.tgz","integrity":"sha512-dPDvzGR3ZKSjUCPlaQ1OiMn5WCFYVTszg2Xa78lyg5tlH6tRw+3Y1zETfl9lQLmWmj07nivCwS/h44REevTg/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBk19hybnvZv5uNzbqDWHWDVizKM7rFOT9U5V65YyOWtAiAJzGeb9QOz95IZuhmn67BkbpL+eMv1ZT3Vm4o404U5DQ=="}]}},"0.1.9":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.9","author":{"name":"Nodejitsu Inc.","email":"info@nodejitsu.com"},"repository":{"type":"git","url":"http://github.com/flatiron/cliff.git"},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"jcrugzz","email":"jcrugzz@gmail.com"}],"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"0.x.x","eyes":"0.1.x","winston":"0.8.x"},"devDependencies":{"vows":"0.7.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"gitHead":"66462b3de5ddab850675e8e6ac077645d0bfc425","bugs":{"url":"https://github.com/flatiron/cliff/issues"},"homepage":"https://github.com/flatiron/cliff","_id":"cliff@0.1.9","_shasum":"a211e09c6a3de3ba1af27d049d301250d18812bc","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"jcrugzz","email":"jcrugzz@gmail.com"},"dist":{"shasum":"a211e09c6a3de3ba1af27d049d301250d18812bc","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.9.tgz","integrity":"sha512-2EECQDk23AtYy9WTUDS0UwdlyGJe62IatdR9dOfG/T3+VIoC6/SA5AnYJWGTjXjweTYL360HEGu4DchCeee4Ng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBbf8E7/35XzckXR9EEO/b8D9C/LNvkDA3q5fABYxU5QIhAJyir5nDKE/gU8GXzDpGrTccb1CYgUZ85OJsk2Kn/pxK"}]}},"0.1.10":{"name":"cliff","description":"Your CLI formatting friend.","version":"0.1.10","author":{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},"repository":{"type":"git","url":"http://github.com/flatiron/cliff.git"},"keywords":["cli","logging","tools","winston"],"dependencies":{"colors":"~1.0.3","eyes":"~0.1.8","winston":"0.8.x"},"devDependencies":{"vows":"0.8.x"},"main":"./lib/cliff","scripts":{"test":"vows test/*-test.js --spec"},"engines":{"node":">= 0.4.0"},"gitHead":"3baf40a73432a26303f080176c7d13fe293bc1d8","bugs":{"url":"https://github.com/flatiron/cliff/issues"},"homepage":"https://github.com/flatiron/cliff","_id":"cliff@0.1.10","_shasum":"53be33ea9f59bec85609ee300ac4207603e52013","_from":".","_npmVersion":"2.1.9","_nodeVersion":"0.10.33","_npmUser":{"name":"indexzero","email":"charlie.robbins@gmail.com"},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"jcrugzz","email":"jcrugzz@gmail.com"}],"dist":{"shasum":"53be33ea9f59bec85609ee300ac4207603e52013","tarball":"https://registry.npmjs.org/cliff/-/cliff-0.1.10.tgz","integrity":"sha512-roZWcC2Cxo/kKjRXw7YUpVNtxJccbvcl7VzTjUYgLQk6Ot0R8bm2netbhSZYWWNrKlOO/7HD6GXHl8dtzE6SiQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbCKYoDu686chpFgbFxktVSvcKjotOQOf7B6/Q7w0x9gIhAL/XZykcltinCl2XC0Nlh0QroVO7IitHbPpnQb8Lt7iZ"}]}}},"maintainers":[{"name":"indexzero","email":"charlie.robbins@gmail.com"},{"name":"jcrugzz","email":"jcrugzz@gmail.com"}],"time":{"modified":"2022-06-13T06:10:27.393Z","created":"2011-05-30T03:55:50.813Z","0.1.0":"2011-05-30T03:55:51.243Z","0.1.1":"2011-05-30T19:19:08.471Z","0.1.2":"2011-06-08T03:13:46.716Z","0.1.3":"2011-06-21T18:43:42.542Z","0.1.4":"2011-09-11T05:10:21.154Z","0.1.5":"2011-09-12T17:41:54.773Z","0.1.6":"2012-02-08T08:05:26.717Z","0.1.7":"2012-02-09T20:52:37.733Z","0.1.8":"2012-06-18T20:02:47.755Z","0.1.9":"2014-09-15T21:11:01.568Z","0.1.10":"2014-12-06T21:43:37.201Z"},"author":{"name":"Charlie Robbins","email":"charlie.robbins@gmail.com"},"repository":{"type":"git","url":"http://github.com/flatiron/cliff.git"},"users":{"fgribreau":true,"hughsk":true,"humantriangle":true,"ajduke":true,"goliatone":true,"f124275809":true,"nguru":true,"zhouanbo":true,"ahmed-dinar":true,"capitainegloomy":true},"keywords":["cli","logging","tools","winston"],"readme":"# cliff\n\nCLI output formatting tools: \"Your CLI Formatting Friend\".\n\n## Installation\n\n### Installing npm (node package manager)\n```\n  curl http://npmjs.org/install.sh | sh\n```\n\n### Installing cliff\n```\n  [sudo] npm install cliff\n```\n\n## Usage\nThere are a number of methods available in Cliff for common logging tasks in command-line tools. If you're looking for more usage, checkout the [examples in this repository][3]:\n\n1. Logging rows of data\n2. Inspecting Objects\n\n### Logging rows of data\n\n**cliff.stringifyRows(rows[, colors])**\n\nTakes a set of Arrays and row headers and returns properly formatted and padded rows. Here's a sample:\n\n``` js\n  var cliff = require('../lib/cliff');\n\n  var rows = [\n    ['Name',  'Flavor',    'Dessert'],\n    ['Alice', 'cherry',    'yogurt'],\n    ['Bob',   'carmel',    'apples'],\n    ['Joe',   'chocolate', 'cake'],\n    ['Nick',  'vanilla',   'ice cream']\n  ];\n\n  console.log(cliff.stringifyRows(rows, ['red', 'blue', 'green']));\n```\n\n![output from string-rows.js][string-rows]\n\n**cliff.putRows(level, rows[, colors])**\n\nThe `putRows` method is a simple helper that takes a set of Arrays and row headers and logs properly formatted and padded rows (logs `stringifyRows` to [winston][0]). Here's a quick sample:\n\n``` js\n  var cliff = require('../lib/cliff');\n\n  var rows = [\n    ['Name',  'Flavor',    'Dessert'],\n    ['Alice', 'cherry',    'yogurt'],\n    ['Bob',   'carmel',    'apples'],\n    ['Joe',   'chocolate', 'cake'],\n    ['Nick',  'vanilla',   'ice cream']\n  ];\n\n  cliff.putRows('data', rows, ['red', 'blue', 'green']);\n```\n\nThe resulting output on the command-line would be:\n\n![output from put-rows.js][put-rows]\n\n**cliff.stringifyObjectRows(objs, properties[, colors])**\n*used to be: cliff.rowifyObjects(objs, properties, colors)*\n\nTakes a set of Objects and the properties to extract from them and returns properly formatted and padded rows. Here's a sample:\n\n``` js\n  var cliff = require('../lib/cliff');\n\n  var objs = [], obj = {\n    name: \"bazz\",\n    address: \"1234 Nowhere Dr.\",\n  };\n\n  for (var i = 0; i < 10; i++) {\n    objs.push({\n      name: obj.name,\n      address: obj.address,\n      id: Math.random().toString()\n    });\n  }\n\n  console.log(cliff.stringifyObjectRows(objs, ['id', 'name', 'address'], ['red', 'blue', 'green']));\n```\n\n![output from string-object-rows.js][string-object-rows]\n\n**cliff.putObjectRows(level, objs, properties[, colors])**\n\nTakes a set of Objects and the properties to extract from them and it will log to the console. (it prints `stringifyObjectRows` with [winston][0]). Here's a sample:\n\n``` js\n  var cliff = require('../lib/cliff');\n\n  var objs = [], obj = {\n    name: \"bazz\",\n    address: \"1234 Nowhere Dr.\",\n  };\n\n  for (var i = 0; i < 10; i++) {\n    objs.push({\n      name: obj.name,\n      address: obj.address,\n      id: Math.random().toString()\n    });\n  }\n\n  cliff.putObjectRows('data', objs, ['id', 'name', 'address']);\n```\n\n![output from string-object-rows.js][string-object-rows]\n\n**Colors Parameter**\n\nThe `colors` parameter is an array that colors the first row. It uses the [colors.js][2]. You can use any of those.\n\n``` js\n  var cliff = require('../lib/cliff');\n\n  var rows = [\n    ['Name',        'Flavor',              'Dessert'],\n    ['Alice'.grey,  'cherry'.cyan,         'yogurt'.yellow],\n    ['Bob'.magenta, 'carmel'.rainbow,      'apples'.white],\n    ['Joe'.italic,  'chocolate'.underline, 'cake'.inverse],\n    ['Nick'.bold,   'vanilla',             'ice cream']\n  ];\n\n  cliff.putRows('data', rows, ['red', 'blue', 'green']);\n```\n\nThe resulting output on the command-line would be:\n\n![output from puts-rows-colors.js][put-rows-colors]\n\n### Inspecting Objects\n\n**cliff.inspect(obj)**\n\nThe `inspect` method is a lightweight wrapper to a pre-configured [eyes][1] inspector. If you wish to change the coloring of objects that are logged using `cliff` you only need to override `cliff.inspect` with a new [eyes][1] inspector. Here is how to use it:\n\n``` js\n  var cliff = require('../lib/cliff');\n\n  console.log(cliff.inspect({\n    literal: \"bazz\",\n    arr: [\n      \"one\",\n      2,\n    ],\n    obj: {\n      host: \"localhost\",\n      port: 5984,\n      auth: {\n        username: \"admin\",\n        password: \"password\"\n      }\n    }\n  }));\n```\n\n![output from inspect.js][inspect]\n\n**cliff.putObject(obj, [rewriters, padding])**\n\nThe `putObject` method is a simple helper function for prefixing and styling inspected object output from [eyes][1]. Here's a quick sample:\n\n``` js\nvar cliff = require('cliff');\n\ncliff.putObject({\n  literal: \"bazz\",\n  arr: [\n    \"one\",\n    2,\n  ],\n  obj: {\n    host: \"localhost\",\n    port: 5984,\n    auth: {\n      username: \"admin\",\n      password: \"password\"\n    }\n  }\n});\n```\n\nThe resulting output on the command-line would be: \n\n![output from put-object.js][put-object]\n\n## Run Tests\n\nAll of the cliff tests are written in [vows][4], and cover all of the use cases described above.\n\n```\n  npm test\n```\n\n## Motivation\n\nCliff is the swiss army knife of CLI formatting tools. It is based on highly flexible and powerful libraries: \n\n* [winston][0]: A multi-transport async logging library for node.js\n* [eyes][1]: A customizable value inspector for node.js\n* [colors][2]: Get colors in your node.js console like what \n\n\n#### Author: [Charlie Robbins](http://twitter.com/indexzero)\n\n[0]: http://github.com/indexzero/winston\n[1]: http://github.com/cloudhead/eyes.js\n[2]: http://github.com/marak/colors.js\n[3]: http://github.com/flatiron/cliff/tree/master/examples\n[4]: http://vowsjs.org\n\n[inspect]: https://github.com/flatiron/cliff/raw/master/assets/inspect.png\n[put-object-rows]: https://github.com/flatiron/cliff/raw/master/assets/put-object-rows.png\n[put-object]: https://github.com/flatiron/cliff/raw/master/assets/put-object.png\n[put-rows-colors]: https://github.com/flatiron/cliff/raw/master/assets/put-rows-colors.png\n[put-rows]: https://github.com/flatiron/cliff/raw/master/assets/put-rows.png\n[string-object-rows]: https://github.com/flatiron/cliff/raw/master/assets/string-object-rows.png\n[string-rows]: https://github.com/flatiron/cliff/raw/master/assets/string-rows.png","readmeFilename":"README.md","homepage":"https://github.com/flatiron/cliff","bugs":{"url":"https://github.com/flatiron/cliff/issues"}}