Skip to content

pkgjs/create-package-json

Repository files navigation

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

About

Create full featured package.json files

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 9

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy