Skip to main content
Commonmark migration
Source Link

If you want to create such a registry yourself, you may want to take a look at npm, the package manager of Node.js, which is open-source and very similar in scope to want you describe. Npm is both:

  1. a central registry with metadata about each library:
    • name, description, keywords, homepage, author, contributors
    • version number, in principle complying with semantic versioning
    • URL of source repository (svn, git, github, gitlab, bitbucket...)
    • compatibility information (in this case it's about the versions of Node)
    • license
    • dependencies
  2. a command-line tool for:
    • searching the registry
    • downloading and installing packages, recursively following their dependencies
    • publishing and updating your own packages on the registry.

See for example the page of a popular library, and the JSON file holding its metadata.

If you want to create such a registry yourself, you may want to take a look at npm, the package manager of Node.js, which is open-source and very similar in scope to want you describe. Npm is both:

  1. a central registry with metadata about each library:
    • name, description, keywords, homepage, author, contributors
    • version number, in principle complying with semantic versioning
    • URL of source repository (svn, git, github, gitlab, bitbucket...)
    • compatibility information (in this case it's about the versions of Node)
    • license
    • dependencies
  2. a command-line tool for:
    • searching the registry
    • downloading and installing packages, recursively following their dependencies
    • publishing and updating your own packages on the registry.

See for example the page of a popular library, and the JSON file holding its metadata.

If you want to create such a registry yourself, you may want to take a look at npm, the package manager of Node.js, which is open-source and very similar in scope to want you describe. Npm is both:

  1. a central registry with metadata about each library:
    • name, description, keywords, homepage, author, contributors
    • version number, in principle complying with semantic versioning
    • URL of source repository (svn, git, github, gitlab, bitbucket...)
    • compatibility information (in this case it's about the versions of Node)
    • license
    • dependencies
  2. a command-line tool for:
    • searching the registry
    • downloading and installing packages, recursively following their dependencies
    • publishing and updating your own packages on the registry.

See for example the page of a popular library, and the JSON file holding its metadata.

Source Link
Edgar Bonet
  • 45.2k
  • 4
  • 42
  • 81

If you want to create such a registry yourself, you may want to take a look at npm, the package manager of Node.js, which is open-source and very similar in scope to want you describe. Npm is both:

  1. a central registry with metadata about each library:
    • name, description, keywords, homepage, author, contributors
    • version number, in principle complying with semantic versioning
    • URL of source repository (svn, git, github, gitlab, bitbucket...)
    • compatibility information (in this case it's about the versions of Node)
    • license
    • dependencies
  2. a command-line tool for:
    • searching the registry
    • downloading and installing packages, recursively following their dependencies
    • publishing and updating your own packages on the registry.

See for example the page of a popular library, and the JSON file holding its metadata.