depA little Node.js dependency installer

联合创作 · 2023-09-22 20:48

dep


A little Node.js dependency installer with the bare minimum features for module end-users.



ToDo


Table of Contents


  • Features

  • Usage

  • Concepts

  • Installation

  • Uninstallation

  • Contributing

  • License

  • Features



    • Install the dependencies defined in a local package.json.

    • Lock the dependencies installed in a local node_modules.

    • Run an arbitrary command from scripts in a local package.json.


    dep is trying to have a similar/same interface of the features with npm, but there are some slightly different implementations internally.


    Install


    dep install


    Install all the dependencies defined in a local package.json.


    dep install <package name>(@{version|resource})


    You can install a package as like npm install.



    $ dep install webpack


    dep install --save={dev|prod} <package name>(@{version|resource})


    You can install the package and save it to either dependencies or devDependencies by using --only={dev|prod}.



    $ dep install webpack --save=dev


    dep install --only={dev|prod}


    You can install either only dependencies or devDependencies by using --only={dev|prod}.



    $ dep install --only=prod


    Lock


    dep lock


    ToDo.


    It will follow the spec of npm's package-lock.json.


    Run


    dep run [script] -- <args>


    This command will take the matched key with provided [script] among the scripts field defined in package.json and execute the value.



    $ dep run test


    You also can provide additional arguments by putting --.



    $ dep run build -- dist/bundle.js


    dep run


    If you do not give an arbitrary [script] to dep run, it lists all of the commands from scripts in a local package.json.



    $ dep run
    Available scripts via `dep run`

    dep run build:
    webpack src/index.js
    dep run test:
    tap "test/*.js"


    Usage



    $ dep -h
    A little Node.js dependency installer

    Commands:
    install Install dependencies defined in package.json [aliases: i]
    lock Lock dependencies installed in node_modules [aliases: l]
    run Run an arbitrary command from scripts in package.json [aliases: r]

    Options:
    --help, -h Show help [boolean]
    --version, -v Show version information [boolean]


    Concepts


    End users


    The target user is always module end-user who makes something with node_modules and doesn't make packages. And the goal of this project is to reproduce most of the features that the end-users use to build their stuff on daily basis.


    Save spaces


    Speed and local disk capacity are a trade-off. To take the both benefits, it would be better to have the cache in somewhere proxy layer instead of local.


    Therefore, dep does not make cache files in a local disc for now.


    Stability


    Stability is a core value. Having a small set makes keeping the green badges easier.



    Installation


    Since dep works independently of npm, dep has a standalone script to install.


    Standalone script



    $ curl -L https://github.com/depjs/dep/raw/master/scripts/install.js | node


    via npm



    $ npm install --global dep


    Uninstallation


    Also for uninstallation.


    Standalone script



    $ curl -L https://github.com/depjs/dep/raw/master/scripts/uninstall.js | node


    via npm



    $ npm uninstall --global dep


    Contributing


    See CONTRIBUTING.md for more info.


    License


    MIT

    浏览 19
    点赞
    评论
    收藏
    分享

    手机扫一扫分享

    编辑 分享
    举报
    评论
    图片
    表情
    推荐
    点赞
    评论
    收藏
    分享

    手机扫一扫分享

    编辑 分享
    举报