NodeJS无所不能

:NodeJS是一个服务器端JavaScript解释器,它将改变服务器应该如何工做的概念。它的目标是帮助程序员构建高度可伸缩的应用程序,编写可以处理数万条同时链接到一个(只有一个)物理机的链接代码。

在几年的时间里,NodeJS逐渐发展成一个成熟的开发平台,吸引了许多开发者。有许多大型高流量网站都采用NodeJS进行开发,像PayPal,此外,开发人员还可使用它来开发一些快速移动Web框架。 node

除了Web应用外,NodeJS也被应用在许多方面,本文盘点了NodeJS在其它方面所开发的十大使人神奇的项目,这些项目涉及到应用程序监控、媒体流、远程控制、桌面和移动应用等等。 git

1.NodeOS     程序员

NodeOS是采用NodeJS开发的一款友好的操做系统,该操做系统是彻底创建在Linux内核之上的,而且采用shell和NPM进行包管理,采用NodeJS不只能够很好地进行包管理,还能够很好的管理脚本、接口等。目前,Docker和Vagrant都是采用NodeOS的首个版本进行构建的。 github

 

2.Noduino web

许多硬件黑客但愿经过Web页面便可控制他们的Arduino,Noduino就是这样的一个项目,一个简单灵活的JavaScript和NodeJS框架,经过使用HTML五、Socket.IO和NodeJS的Web应用来控制Arduino。目前,该项目刚刚启动,支持一些经常使用功能,好比从Arduino中捕获事件(例如点击按钮)等。 shell

                 

3.Node-WebKit                          npm

Node-Webkit是一个基于Chromium与NodeJS的应用程序运行器,容许开发者使用Web技术编写桌面应用。它是NodeJS与WebKit技术的融合,提供一个跨Windows、Linux平台的客户端应用开发的底层框架。 编程

跨平台开发并不是易事,其中一种方式即是使用Web技术和Node-Webkit开发桌面应用来代替那些庞大且笨重的开发框架。 canvas

                         

4.PDFKit                      浏览器

PDFKit是采用NodeJS开发的一款PDF文档生成库,它使用一个“HTML5 canvas-like API”来建立矢量图形和字体嵌入,而且支持许多标准的PDF功能,如文件的安全性、表的建立、文本换行、项目符号、高亮提示、注释等PDF功能。

注意,PDFKit是一款PDF生成工具,而不是一个文档转换系统。若是你想对现有的PDF文档进行操做,你可使用另外一个NodeJS项目——             Scissors

                         

5.Log.io                         

Log.io是一个基于NodeJS开发的实时日志监控项目,在浏览器里访问。须要注意的是,Log.io只监视日志变更并不存储日志,不过这个不要紧,只要知道日志存储在哪一个机器上。

Log.io使用             Socket.io库发送活动报告的,和其余的监控工具同样,Log.io也采用服务器-客户端的模式。Log.io由两部分组成:server和harveste,server运行在机器             A(服务器)上监视和纪录其余机器发来的日志消息;log harvester 运行在机器 B(客户端)上用来监听和收集机器 B上的日志改动,并将改动发送给机器             A,每一个须要纪录日志的机器都须要一个harvester。

                         

6.NodecastLeapcast        

受谷歌Chromecast技术的启发,开发者使用NodeJS开发出很多Chromecast仿真应用。如Nodecast或Leapcast。在PC上运行Nodecast或Leapcast,启动移动设备,选择一个支持Chromecast的应用程序,而后你就能够把移动广播上的内容映射到电脑上了,把电脑当成一个流媒体使用。

在这两个应用中,Nodecast比较简单些,但相应的功能也比较少,它仅通过了YouTube和Google Music的测试(             DEMO)。注意,你们不要把Nodecast与             Nodecast库混淆,后者使用DIAL发现协议提供连接设备(相似Chromecast)。

                         

7.Nexe                     

Nexe是一款小巧却很是实用的NodeJS工具,它能够为NodeJS应用建立单一可执行的文件,而且无需安装运行时,这样,一些非技术终端的用户就无需变更NodeJS应用的全部依赖程序。若是你想发布一个NodeJS应用程序,而且没有GUI,Nexe则是您的最佳选择。目前该应用程序的一个弊端是不能在Windows平台上工做,只适用于Linux和Mac            OS X平台,而且它也不支持本地NodeJS模块。            

                         

8.Hyro        

Hyro是使用NodeJS开发的一款实时HTML5编辑器,以下图所示,左边显示HTML源码,右边显示内容。语法高亮由             CodeMirror提供。Hyro并不打算成为一款成熟的Web IDE,更像是一款轻量级的HTML或CSS记事本。

                         

9.Haroopad                         

Haroopad是一款Linux上的markdown编辑器,使用Chromium做为UI,支持Windows、Mac OS X和Linux。主题样式丰富,语法标亮支持54种编程语言。            以下图所示,一边是代码编辑窗口,一边是预览窗口,能够实时更新。其邮件导出功能能够将文档发送到Tumblr和Evernote。

                         


10.TiddlyWiki5                         

TiddlyWiki是一款交互式的wiki,很是灵活,它也能够在浏览器里做为单一的HTML文件或者是一款功能强大的NodeJS应用程序。

TiddlyWiki5是全新设计的5.0版本,它能够直接集成NodeJS解锁一系列的功能,但在单机模式下是不可用的。目前,TiddlyWiki5仍处于测试阶段。