pkgjs / create-pkg

Scaffolding for JavaScript
10 stars 4 forks source link

project scope #9

Open boneskull opened 3 years ago

boneskull commented 3 years ago

Copied verbatim from nodejs/package-maintenance#404 by @darcyclarke

create-pkg

Goals:

  1. Provide a tool that promotes sane package defaults (defined by PMWG)
  2. Provide tools to extend defaults per community/team

Example Usage:

$ npm init pkg
$ npx create-pkg
const pkg = require('create-pkg')
import pkg from 'create-pkg'

Questions:

  1. What do we want the scaffold output to include?
    • package.json
      • name
      • description
      • homepage
      • author
      • license
      • funding
      • version
      • type
      • main
      • scripts
        • "prepublish": "..."* (contentious)
        • "test": "..."* (contentious)
      • exports
    • index.js
    • LICENSE
    • CONTRIBUTING.md
    • CODE_OF_CONDUCT.md
    • README.md
    • FUNDING.yml* (contentious)
    • .npmrc* (contentious)
    • .gitignore* (contentious)
      • Contents: /node_modules
    • .github/ISSUE_TEMPLATES/** (contentious)
  2. What API surface do we want to expose to both end users and folks who want to compose the base generator with their own custom opinions?
    • Interfaces: CLI w/ Interactive/Prompts & a JS API

Next Steps:

References & Prior Art:

jonchurch commented 3 years ago

More prior art: