dfpm
v0.0.2
Published
[![npm version](https://badge.fury.io/js/dfpm.svg)](https://badge.fury.io/js/dfpm)
Downloads
5
Maintainers
Readme
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