Tag Archives: npm

在 Python 的 pip、Nodejs 的 npm、Ruby 的 RubyGems 上面放木馬研究?

在 Python 領域裡常用 pip 安裝軟體: $ pip install reqeusts 或是: $ sudo pip install reqeusts 其他的平台也大致類似於這樣的動作。而在「Typosquatting programming language package managers」這篇文章裡,作者用 typo 之類的方式列出可能的名稱,像是這樣的名稱: $ sudo pip install reqeusts 然後在這三個平台上發動攻擊,上傳了數百個套件並且觀察: All in all, I created over 200 such packages and equipped them … Continue reading

Posted in Computer, Murmuring, Network, Programming, Security, Software | Tagged , , , , , , , , , , , , , | Leave a comment

把 npm 的 dependency 當作 PageRank 的資料來源,分析 npm 目前的生態...

在「An Analysis of the JavaScript Package Ecosystem npm」這篇看到作者把 npm 的 dependency 當作資料來源,計算出 npm 的 PageRank: 可以看到 Underscore.js 的 PageRank 一直都維持在第一位... 這個方法頗有趣的,不知道有沒有其他語言的 :o

Posted in Computer, Murmuring, Network, Programming, Software | Tagged , , , , | 4 Comments

在 Command Line 跟 Stack Overflow 互動

在 Hacker News Daily 上看到可以在 command line 跟 Stack Overflow 互動的工具:「stackoverflow from the terminal」。 可以用 npm 安裝。 作者引用了 xkcd 的笑話來說明為什麼要開發這個程式: 出自「tar」

Posted in Computer, Murmuring, Network, Programming, Software | Tagged , , , , , , , , , | Leave a comment

Command Line 界面的 caniuse

前幾天在其他地方看到,剛剛在 Zite 上又翻到:「Use this handy command line tool to check if your code works across browsers」。 官方網站在「sgentle/caniuse-cmd」這邊,可以透過 npm install caniuse-cmd 安裝,或是加上 -g (npm install -g caniuse-cmd) 裝到系統裡。

Posted in Computer, Murmuring, Network, Software | Tagged , , , , , | Leave a comment

用 npm 取代 Build Tools (像是 gulp 或 grunt)

這篇「How to Use npm as a Build Tool」教你如何用 package.json 的 scripts 取代 gulp 或是 grunt 這類 Build Tools。 文章裡面可以看到各種奇技淫巧都出現了,dependency 的部份用 recursive 解決 (npm 內部自己再呼叫 npm 執行),stream 的部份用 pipe 解決 (這個到是很自然),然後用外部程式掛進來處理 watch 與 livereload,甚至還出現可以自己寫 js 檔案呼叫的方法... XDDD 無所不用其極!反正我就是不要用 gulp 與 grunt... … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , , , , | Leave a comment

Ubuntu 下建立 Cordova 的 Android 環境...

依照「Cordova: Getting Started with iOS and Android Applications (Tech Tip #14)」這篇的方法,再加上一些以前練出來的經驗,把系統給弄起來了。 首先是先到 Android 官網下載 Android SDK,目前版本是 adt-bundle-linux-x86_64-20131030,找個合適的地方解開後 (我是放到 $HOME/android 下),把 PATH 加進去: export PATH="${HOME}/android/sdk/platform-tools:${HOME}/android/sdk/tools:${PATH}" 接下來是透過 nvm 安裝 node.js,先安裝 nvm: wget https://raw.github.com/creationix/nvm/master/install.sh sh install.sh 然後重新啟動 shell 讓 nvm 與 PATH 生效後,安裝 … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , | Leave a comment

用 browserify 將 npm 的函式庫包到瀏覽器上用...

browserify 可以將用到的程式碼都包成一包,拿到瀏覽器上使用。 舉個例子離說,先寫了一個 a.js: (function(){ var el = document.getElementById('output'); var j2x = require('json2xml'); el.innerText = j2x({a: 1}); })(); 其中可以看到直接拿 require() 把 json2xml 抓進來。但在瀏覽器裡要自己處理有哪些 dependency 很麻煩,就用 browserify 拉出來: browserify a.js -o a.bundle.src.js 生出來的 a.bundle.src.js 就可以拿到瀏覽器裡使用了!如果需要的話,還可以用 JS Compressor 再壓起來再拿到瀏覽器裡使用。 最後補充一下,browserify 的安裝方式很簡單: npm … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , | Leave a comment

用 BrowserSync 測試多個平台...

BrowserSync 是用 node.js 寫的工具,可以同時測試一堆 device,修改後不用按 reload,印象中已經有套件可以做類似的事情? 一般用 npm 裝就可以了: npm install browser-sync 最簡單的方法是直接執行 browser-sync,執行後會出現像這樣的訊息: <script src='//192.168.1.1:3000/socket.io/socket.io.js'></script> <script>var ___socket___ = io.connect('http://192.168.1.1:3000');</script> <script src='//192.168.1.1:3001/client/browser-sync-client.0.6.0.js'></script> 把這段程式碼貼到 body 的最後面就可以了,當 BrowerSync 偵測到檔案有更新時會透過 server push 機制重刷頁面。 另外,也可以產生 bs-config.js 修改設定: browser-sync --init 更完整的說明可以從「Options」這頁找到。

Posted in Browser, Computer, CSS, Murmuring, Network, Programming, Software, WWW | Tagged , , , , , , , | 1 Comment

node.js 版的 YUICompressor...

看「Fantastic front-end performance Part 1 – Concatenate, Compress & Cache – A Node.JS Holiday Season, part 4」的時候發現 node.js 版的 YUICompressor 比起 Perl 版本更早之前就 porting 完成了:「UglifyCSS」,甚至是官方版本的「yuicompressor / ports / js / cssmin.js」也都遠早於 Perl 版本... 用 npm 裝 uglifycss 就可以用了...

Posted in Computer, Murmuring, Network, Programming, Software, WWW | Tagged , , , , , , , , , , , , , , | Leave a comment