No description
Find a file
2020-02-21 20:11:34 +01:00
modules Custom script running 2020-02-21 20:10:08 +01:00
packages Add packages location 2020-02-21 16:42:02 +01:00
test Test error exit 2020-02-21 20:10:30 +01:00
.gitattributes Initial commit 2020-02-19 16:33:30 +01:00
.gitignore Prevent comitting of tars/ and node_modules/ 2020-02-21 20:11:34 +01:00
bpm.bat Fix to work everywhere 2020-02-19 17:45:29 +01:00
index.js start & test shortcuts for run-script 2020-02-21 20:10:22 +01:00
LICENSE Initial commit 2020-02-19 16:33:30 +01:00
package-lock.json Introduce dependencies, see desc 2020-02-21 16:41:51 +01:00
package.json Introduce dependencies, see desc 2020-02-21 16:41:51 +01:00
README.md Add some helping notes 2020-02-19 20:27:05 +01:00

bpm

Better package manager.

BPM is NOT ready to use, please wait until using it in production until stable version is released

Manages your packages more easily, is way faster than any other available package manager and most importanly, saves space for your projects.

Why?

NPM (node package manager) and others always use folder node_modules in the projects directory. This is to always use the version the package specifies, but it also means that it uses much more space than it needs - even same versions are installed duplicately.

BPM on the other hand, stores all packages in one place and also saves a file to mention which projects are actively using the package. If all projects remove the dependency, then it's simply removed from the disk to save space.

This means, that it can save much space - some apps use same depndencies and same versions, so they will be merged.

BPM create node_modules. Is it normal?

Yes! Because of how node works, BPM needs to create the directory, but instead of pasting the dependencies there, it creates a symlink pointing to the actual version.

Commands

BPM is aimed to fully replace NPM, but, as of now, it cannot.

Currently supported and working commands are:

  • view (alias get, info) - Gets information about current project or given package from NPM's registry
  • bin - Shows installation path of BPM
  • ping - Does HTTP ping to NPM's registry. Note this is different from NPM ping, so it cannot be compared.
  • init - Creates a default package.json in current working directory.

Hide package.json warnings

Use the flag --supressChecking or -sch for short.