pkginfo
An easy way to expose properties on a module from a package.json
Last updated 3 years ago by indexzero .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install pkginfo 
SYNC missed versions from official npm registry.

node-pkginfo

An easy way to expose properties on a module from a package.json

Installing pkginfo

  npm install pkginfo

Motivation

How often when writing node.js modules have you written the following line(s) of code?

  • Hard code your version string into your code
  exports.version = '0.1.0';
  • Programmatically expose the version from the package.json
  exports.version = require('/path/to/package.json').version;

In other words, how often have you wanted to expose basic information from your package.json onto your module programmatically? WELL NOW YOU CAN!

Usage

Using pkginfo is idiot-proof, just require and invoke it.

  var pkginfo = require('pkginfo')(module);

  console.dir(module.exports);

By invoking the pkginfo module all of the properties in your package.json file will be automatically exposed on the callee module (i.e. the parent module of pkginfo).

Here's a sample of the output:

  { name: 'simple-app',
    description: 'A test fixture for pkginfo',
    version: '0.1.0',
    author: 'Charlie Robbins <charlie.robbins@gmail.com>',
    keywords: [ 'test', 'fixture' ],
    main: './index.js',
    scripts: { test: 'vows test/*-test.js --spec' },
    engines: { node: '>= 0.4.0' } }

Expose specific properties

If you don't want to expose all properties on from your package.json on your module then simple pass those properties to the pkginfo function:

  var pkginfo = require('pkginfo')(module, 'version', 'author');

  console.dir(module.exports);
  { version: '0.1.0',
    author: 'Charlie Robbins <charlie.robbins@gmail.com>' }

If you're looking for further usage see the examples included in this repository.

Run Tests

Tests are written in vows and give complete coverage of all APIs.

  npm install
  npm test

Author: Charlie Robbins

License: MIT

Current Tags

  • 0.4.1                                ...           latest (3 years ago)

7 Versions

  • 0.4.1                                ...           3 years ago
  • 0.4.0                                ...           4 years ago
  • 0.3.1                                ...           5 years ago
  • 0.3.0                                ...           7 years ago
  • 0.2.3                                ...           9 years ago
  • 0.2.2                                ...           9 years ago
  • 0.2.1                                ...           9 years ago
Maintainers (1)
Downloads
Today 281
This Week 6,724
This Month 12,600
Last Day 1,603
Last Week 8,873
Last Month 33,549
Dependencies (0)
None
Dev Dependencies (1)
Dependents (1213)

Copyright 2014 - 2017 © taobao.org |