除了Web應(yīng)用外,NodeJS也被應(yīng)用在許多方面,本文盤點(diǎn)了NodeJS在其它方面所開(kāi)發(fā)的十大令人神奇的項(xiàng)目,這些項(xiàng)目涉及到應(yīng)用程序監(jiān)控、媒體流、遠(yuǎn)程控制、桌面和移動(dòng)應(yīng)用等等。
1.NodeOS
NodeOS是采用NodeJS開(kāi)發(fā)的一款友好的操作系統(tǒng),該操作系統(tǒng)是完全建立在Linux內(nèi)核之上的,并且采用shell和NPM進(jìn)行包管理,采用NodeJS不僅可以很好地進(jìn)行包管理,還可以很好的管理腳本、接口等。目前,Docker和Vagrant都是采用NodeOS的首個(gè)版本進(jìn)行構(gòu)建的。
2.Noduino
許多硬件黑客希望通過(guò)Web頁(yè)面即可控制他們的Arduino,Noduino就是這樣的一個(gè)項(xiàng)目,一個(gè)簡(jiǎn)單靈活的JavaScript和NodeJS框架,通過(guò)使用HTML5、Socket.IO和NodeJS的Web應(yīng)用來(lái)控制Arduino。目前,該項(xiàng)目剛剛啟動(dòng),支持一些常用功能,比如從Arduino中捕獲事件(例如點(diǎn)擊按鈕)等。
Node-Webkit是一個(gè)基于Chromium與NodeJS的應(yīng)用程序運(yùn)行器,允許開(kāi)發(fā)者使用Web技術(shù)編寫桌面應(yīng)用。它是NodeJS與WebKit技術(shù)的融合,提供一個(gè)跨Windows、Linux平臺(tái)的客戶端應(yīng)用開(kāi)發(fā)的底層框架。
跨平臺(tái)開(kāi)發(fā)并非易事,其中一種方式便是使用Web技術(shù)和Node-Webkit開(kāi)發(fā)桌面應(yīng)用來(lái)代替那些龐大且笨重的開(kāi)發(fā)框架。
4.PDFKit
PDFKit是采用NodeJS開(kāi)發(fā)的一款PDF文檔生成庫(kù),它使用一個(gè)“HTML5 canvas-like API”來(lái)創(chuàng)建矢量圖形和字體嵌入,并且支持許多標(biāo)準(zhǔn)的PDF功能,如文件的安全性、表的創(chuàng)建、文本換行、項(xiàng)目符號(hào)、高亮提示、注釋等PDF功能。
注意,PDFKit是一款PDF生成工具,而不是一個(gè)文檔轉(zhuǎn)換系統(tǒng)。如果你想對(duì)現(xiàn)有的PDF文檔進(jìn)行操作,你可以使用另一個(gè)NodeJS項(xiàng)目—— Scissors。
5.Log.io
Log.io是一個(gè)基于NodeJS開(kāi)發(fā)的實(shí)時(shí)日志監(jiān)控項(xiàng)目,在瀏覽器里訪問(wèn)。需要注意的是,Log.io只監(jiān)視日志變動(dòng)并不存儲(chǔ)日志,不過(guò)這個(gè)沒(méi)關(guān)系,只要知道日志存儲(chǔ)在哪個(gè)機(jī)器上。
Log.io使用 Socket.io庫(kù)發(fā)送活動(dòng)報(bào)告的,和其他的監(jiān)控工具一樣,Log.io也采用服務(wù)器-客戶端的模式。Log.io由兩部分組成:server和harveste,server運(yùn)行在機(jī)器 A(服務(wù)器)上監(jiān)視和紀(jì)錄其他機(jī)器發(fā)來(lái)的日志消息;log harvester 運(yùn)行在機(jī)器 B(客戶端)上用來(lái)監(jiān)聽(tīng)和收集機(jī)器 B上的日志改動(dòng),并將改動(dòng)發(fā)送給機(jī)器 A,每個(gè)需要紀(jì)錄日志的機(jī)器都需要一個(gè)harvester。
受谷歌Chromecast技術(shù)的啟發(fā),開(kāi)發(fā)者使用NodeJS開(kāi)發(fā)出不少Chromecast仿真應(yīng)用。如Nodecast或Leapcast。在PC上運(yùn)行Nodecast或Leapcast,啟動(dòng)移動(dòng)設(shè)備,選擇一個(gè)支持Chromecast的應(yīng)用程序,然后你就可以把移動(dòng)廣播上的內(nèi)容映射到電腦上了,把電腦當(dāng)成一個(gè)流媒體使用。
在這兩個(gè)應(yīng)用中,Nodecast比較簡(jiǎn)單些,但相應(yīng)的功能也比較少,它僅經(jīng)過(guò)了YouTube和Google Music的測(cè)試( DEMO)。注意,大家不要把Nodecast與 Nodecast庫(kù)混淆,后者使用DIAL發(fā)現(xiàn)協(xié)議提供鏈接設(shè)備(類似Chromecast)。
7.Nexe
Nexe是一款小巧卻非常實(shí)用的NodeJS工具,它可以為NodeJS應(yīng)用創(chuàng)建單一可執(zhí)行的文件,并且無(wú)需安裝運(yùn)行時(shí),這樣,一些非技術(shù)終端的用戶就無(wú)需變動(dòng)NodeJS應(yīng)用的所有依賴程序。如果你想發(fā)布一個(gè)NodeJS應(yīng)用程序,并且沒(méi)有GUI,Nexe則是您的最佳選擇。目前該應(yīng)用程序的一個(gè)弊端是不能在Windows平臺(tái)上工作,只適用于Linux和Mac OS X平臺(tái),并且它也不支持本地NodeJS模塊。
8.Hyro
Hyro是使用NodeJS開(kāi)發(fā)的一款實(shí)時(shí)HTML5編輯器,如下圖所示,左邊顯示HTML源碼,右邊顯示內(nèi)容。語(yǔ)法高亮由 CodeMirror提供。Hyro并不打算成為一款成熟的Web IDE,更像是一款輕量級(jí)的HTML或CSS記事本。
Haroopad是一款Linux上的markdown編輯器,使用Chromium作為UI,支持Windows、Mac OS X和Linux。主題樣式豐富,語(yǔ)法標(biāo)亮支持54種編程語(yǔ)言。 如下圖所示,一邊是代碼編輯窗口,一邊是預(yù)覽窗口,可以實(shí)時(shí)更新。其郵件導(dǎo)出功能可以將文檔發(fā)送到Tumblr和Evernote。
TiddlyWiki是一款交互式的wiki,非常靈活,它也可以在瀏覽器里作為單一的HTML文件或者是一款功能強(qiáng)大的NodeJS應(yīng)用程序。
TiddlyWiki5是全新設(shè)計(jì)的5.0版本,它可以直接集成NodeJS解鎖一系列的功能,但在單機(jī)模式下是不可用的。目前,TiddlyWiki5仍處于測(cè)試階段。
來(lái)自: InfoWorld
聯(lián)系客服