Skip to content

project scope #9

Open
Open
@boneskull

Description

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:

  • Get some general consensus of the approach we'd like to take building this & the defaults we'd want
  • Update @pkgjs/support to be a consumer of this tool or vice-versa

References & Prior Art:

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions