1.1.0 • Published 4 months ago

create-package-json v1.1.0

Weekly downloads
211
License
MIT
Repository
github
Last release
4 months ago

Create a package.json like a champion

NPM Version NPM Downloads JS Standard Style GitHub Sponsor

This is a fully featured package.json scaffolding tool. It goes above and beyond the basic npm init by supporting (almost) all of the keys you can set in a package.json. It can be used as a simple cli tool, or inside your other package scaffolding tools.

NOTE: This is a work in progress, more to come on docs and there are some missing options at the moment. See here for missing fields.

Usage

$ npm init package-json
$ npx create-package-json

CLI Usage

$ create-package-json --help

Generate a package.json

Commands:
  create-package-json     Generate a package.json                      [default]

Options:
      --help               Show help                                   [boolean]
      --version            Show version number                         [boolean]
  -d, --cwd                Directory to run in          [default: process.cwd()]
      --silent                                                         [boolean]
      --verbose                                                        [boolean]
      --ignore-existing    Ignore existing files (& overwrite them)
      --name                                                            [string]
      --scope              Set a scope to be used when suggesting a package name
                                                                        [string]
  -V, --package-version                                                 [string]
      --description                                                     [string]
      --author                                                          [string]
      --repository                                                      [string]
      --keywords                                                        [string]
      --license                                                         [string]
      --type                                                            [string]
      --main                                                            [string]
      --private                                                        [boolean]
      --dependencies                                                    [string]
      --dev-dependencies                                                [string]
      --peer-dependencies                                               [string]
      --spacer                                      [string] [default: 2 spaces]
      --save-exact                                                     [boolean]

Dependencies should be a comma separated list like --dependencies="express,react", and it can also include versions, --dependencies="express@5".

Scripts should be defined as a json string, --scripts='{"test":"exit 0"}'.

Programmatic Usage

const createPackageJson = require('create-package-json')

;(async () => {
  const pkg = await createPackageJson({
    name: '@myscope/my-package',
    description: 'A useless new package',
    dependencies: ['express'],
    devDependencies: ['mocha'],
    author: 'Me <me@me.com>',
    version: '1.0.0'
  })

  console.log(pkg) // The json after writing and installing
})()

Implementation TODO

See package.json docs

  • exports
  • bin
  • funding
  • files
  • browser
  • directories
  • config
  • dependencies
  • devDependencies
  • bundledDependencies
  • optionalDependencies
  • engines
  • os
  • cpu
  • publishConfig
  • homepage
  • bugs
  • contributors
1.1.0

4 months ago

1.0.0

7 months ago

1.0.0-7

7 months ago

1.0.0-6

3 years ago

1.0.0-5

3 years ago

1.0.0-4

3 years ago

1.0.0-3

3 years ago

1.0.0-2

4 years ago

0.1.2

4 years ago

1.0.0-1

4 years ago

1.0.0-0

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago

0.0.11

4 years ago

0.0.10

4 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago