0.0.2 • Published 10 months ago
dfpm v0.0.2
dfpm
A developer friendly JavaScript package manager.
Goals:
- Developer productivity with existing JavaScript ecosystem and tooling
- The best performance achievable with Node.js
- Good explanation of package manager behavior - why the dependency is placed here or there during installation, what factors contributed to this decision and what to do to make the dependency singular for the project
- Fine-grained control of package manager behavior for various types of workflows
- Experimental features that has good compatibility with current JavaScript ecosystem
Implemented experimental features:
- Reproducible installs without "fat" lockfiles.
lockTime
field is used instead in thepackage.json
file to fixate the time of install. On subsequent installs the highest dependency versions are picked that were published beforelockTime
. When new dependencies added to the project that were published afterlockTime
their ranges are resolved to the minimal satisfying version (typically the ranges of newly added dependencies are the latest at the moment when they are added to thepackage.json
).
Usage:
Install
dfpm
globally first:npm i -g dfpm
Run installation within your Node.js project directory:
dfpm
Run script
foo
frompackage.json
:dfpm foo
Add/remove packages to your project:
dfpm add lodash
Get command line help:
dfpm -h