npm – The Node Package Manager
For now, this README is more of a task list/roadmap than a proper "how to use this" type doc.
If you're interested in helping, that's awesome! Please fork this project, implement some of the things on the list, and then let me know. You can usually find me in #node.js on freenode.net, or you can reach me via firstname.lastname@example.org.
What works now:
Given a name, and a url or filename of a tarball containing a
package.json, install it.
where "install it" means:
- fetch the tarball
- copy it to
ROOT/<name>/npm/. If it already exists, then insist that it be uninstalled first.
- read and parse the package.json
ROOT/<name>/package/<lib>, if there is one.
- Run the
makecommand in the package dir (sh)
Goals for Next Iteration
- Keep a registry of what's been installed, and what tarball it came from. Maybe something like
- Add an "uninstall" command that deletes the folder for a package.
- Add a "reinstall" command that re-fetches a tarball and installs it with the same name as before
- wrap it in a nice CLI
- Support an "uninstall" command on the package.json, and run it when uninstalling.
- Support "requires" which is a list of tarball urls that must be installed first.
- Figure out how to manage requirements without it being a total cluster.
- Replace the reliance on tarballs with a list of names that REFER to tarballs
- Versions. Be able to install and activate different versions, have a url for the version info to update when necessary.
- Interpret tusk-style package.json files.
- Make a pizza and serve it up.
- The kitchen sink.