openjs-foundation / package-metadata-interoperability-collab-space

The goal of the Package Metadata Interoperability Collab Space is to improve how JavaScript developers define their packages across the ecosystem. The group is currently working to better understand package.json and how developers use it to define their projects.
26 stars 4 forks source link

Create markdown table skeleton for initial package.json fields #21

Open rxmarbles opened 4 months ago

rxmarbles commented 4 months ago

*Open Inventory and Analysis” issue to start research process async across stakeholders.

Let’s make a place (doc, wiki, issue) that can list all known package.json fields. For each field, let’s link to all of the places (package managers, tools, platforms, etc) that document semantics/usage of it. To better populate that list of fields, we should audit the docs of known package managers/tools/platforms/etc to ensure we’re not missing anything. This work can be fully parallelized and done async, and set up so that anyone can arbitrarily pick a field to research and flesh out.

Let’s model things after https://github.com/mdn/browser-compat-data - with the intent to hopefully PR the data in there when it’s mostly complete, but whether they want the data or not, we can benefit from their data schema design.

First steps: make a markdown file in the collab space repo with a skeleton so people can PR in fields and research results.

Desired stakeholders:

nektro commented 4 months ago

WIP

Bun package manager

pkgname, relativepath, version used above are all strings

Bun runtime

Bun bundler

Bun test runner

Uncategorized

nektro commented 4 months ago

https://runtime-keys.proposal.wintercg.org

Ethan-Arrowood commented 3 months ago

I believe this idea is similar to my intent with: https://github.com/openjs-foundation/package-json-research

nektro commented 2 months ago

https://code.visualstudio.com/api/references/extension-manifest

reggi commented 1 week ago

npm also has this typescript definition here: https://github.com/npm/types/blob/main/types/index.d.ts#L90-L129