爱意满满的作品展示区。
djyde

Sopa - 造了一个基于本地的前端 package manager 轮子

  •  
  •   djyde ·
    djyde · Feb 20, 2015 · 3474 views
    This topic created in 4102 days ago, the information mentioned may be changed or developed.

    https://github.com/djyde/sopa

    大年初一我还在写代码 :)

    其实是这样的,我们学校的奇葩网络是算流量的,每个月 30 块,9G 流量,用完限速 20k/s。所以我每次 npm installbower install 的时候都很心痛 =。=

    所以我才造了 Sopa 这个轮子,是一个本地版的 bower。它的原理是你在某个 folder 里 $ sopa pull 一些静态文件,然后在其它目录里 $ sopa install 的时候直接从这个 folder 取 package.

    举个栗子:

    安装 npm install sopa -g

    首次用 Sopa 需要先设置一个存 package 的目录,比如$ sopa set-dir ~/sopa_components

    我现在想 pull 一个 angular 下来,$ sopa pull 的用法是 $ sopa pull [email protected]@type fileURL

    packageName 是这个 package 的名字,由你自己定,当 pull 下来以后当你需要 install 的时候就以这个名字来 install。

    x.y.z 是版本号,type 是类型,分 js 和 css。

    fileURL 一般是文件是地址,我一般从 cdnjs 上面 copy 下来。

    所以这里要 pull angular 的话,我是先从 cdnjs 找到 angular 的 cdn url,然后 copy:

    $ sopa pull [email protected]@js //cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.13/angular.min.js

    这样就成功 pull 下来了。。

    现在在另一个文件夹里 install:
    $ sopa install [email protected]@js javascripts

    后面的 javascripts 是你要把他 install 到哪个文件夹,这里就是 install 到 javascripts 里,这个随你定。

    如果你想看你 pull 过的 package, 你可以 $ sopa ls
    如果你想看某个 package 有哪些 pull 过的版本,你可以 $ sopa ls thepackage

    开源在 Github: https://github.com/djyde/sopa

    主要是写给自己用,如果同时能帮助到你,请告诉我,我会非常高兴 :)

    13 replies    2015-02-20 20:27:13 +08:00
    kawaiiushio
        1
    kawaiiushio  
       Feb 20, 2015 via iPhone
    沙发支持大神
    viko16
        2
    viko16  
       Feb 20, 2015 via Android
    看了学校状况怎么那么眼熟,一看楼主发现是熟人2333…
    djyde
        3
    djyde  
    OP
       Feb 20, 2015
    @viko16 2333 我还给你发过 pull request 呢。。。话说我私信了网协部长说想搞个内网 cnpm,他没鸟我。。。
    viko16
        4
    viko16  
       Feb 20, 2015 via Android
    @djyde 哈哈,这个没准可以帮你,扣扣私聊~
    djyde
        5
    djyde  
    OP
       Feb 20, 2015
    @viko16 不过内网服务器貌似是 win server.... 我要了也没用=。=
    viko16
        6
    viko16  
       Feb 20, 2015 via Android
    @djyde 目前手上的资源,系统是随便我装的,有难度的反而是域名申请啊2333
    msg7086
        7
    msg7086  
       Feb 20, 2015
    真诚地建议不要用SOPA这个词。
    这个词曾经吵得沸沸扬扬的。
    djyde
        8
    djyde  
    OP
       Feb 20, 2015
    @viko16 那蛮好,随时联系 randypriv at gmail dot com
    0x142857
        9
    0x142857  
       Feb 20, 2015 via Android
    @msg7086 那正是他为什么用这个词的原因 XD
    msg7086
        10
    msg7086  
       Feb 20, 2015
    @0x142857 あれ竟然错过了最后那段说明→_→
    0x142857
        11
    0x142857  
       Feb 20, 2015 via Android
    @msg7086 我没错过
    Sunnyyoung
        12
    Sunnyyoung  
       Feb 20, 2015
    @viko16 我不同意,嘿嘿
    0x142857
        13
    0x142857  
       Feb 20, 2015 via Android
    @msg7086 不过这名字确实不好……
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4475 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 10:07 · PVG 18:07 · LAX 03:07 · JFK 06:07
    ♥ Do have faith in what you're doing.