Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将Chromium和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。
Electron于2013年作为构建Github上可编程的文本编辑器Atom的框架而被开发出来。这两个项目在2014春季开源。
目前它已成为开源开发者、初创企业和老牌公司常用的开发工具。 看看谁在使用Electron 。
继续往下阅读可以了解Electron的贡献者们和已经发布的版本,或者直接阅读快速开始指引来开始用Electron来构建应用。
核心团队和贡献者
Electron由Github上的一支团队和一群活跃的贡献者维护。 有些贡献者是独立开发者,有些则在用Electron构建应用的大型公司里工作。 我们很乐意把贡献频繁的人加入到项目维护者队伍中。 阅读有关为Electron作贡献的更多信息。
版本发布
Electron的版本发布相当频繁。每当Chromium、Node.js有重要的bug修复,新API或是版本更新时我们就会发布新版本。
更新依赖项
Electron中Chromium的版本通常会在Chromium发行新的稳定版后的一到两周之内更新,具体时间根据升级所需的工作量而定。
为了使版本更加稳定,Electron通常会在Node.js发布了新版本的一个月之后再更新。
在Electron里,Node.js和Chromium共享同一个V8实例--通常是Chromium在用的版本。大多数情况下这能 正常工作 但有时候还是需要为Node.js打补丁。
版本
从版本2.0开始Electron会 遵循 semver 标准。 对于大多数应用来说, 在使用最新版本的npm情况下, 运行 $ npm install electron 都将会正常工作 。
版本更新过程已明确并详细地描述在我们的 版本控制文档 中。
长期支持
当前并不存在对Electron旧版本的长期支持。 如果现在你使用的Electron版本跑得不错,你就可以一直使用这个版本。 如果你想使用新发布的特性,那就升级到更新的版本。
核心理念
为了保持Electron的小巧 (文件体积) 和可持续性开发 (以防依赖库和API的泛滥) ,Electron限制了所使用的核心项目的数量。
比如Electron只用了Chromium的渲染库而不是其全部组件。 这使得升级Chromium更加容易,但也意味着Electron缺少了Google Chrome里的一些浏览器相关的特性。
添加到Electron的新功能应该主要是原生 API。 如果可以的话,一个功能应该尽可能的成为一个Node.js模块。 参见社区构建的Electron工具。
发现一款强大的开源聊天框架 Spika 。 它不仅提供iOS,Android,Web端的源码,还有后端的源码,都是开源的。Spika的提供者是来自克罗地亚的一家移动APP公司 Clover Studio 感谢他们的团队把这个项目从头到脚都开源了。
相对于传统的LAMP(LINUX, APACHE, MYSQL,PHP), Node.js + MongoDB 是一种比较新的后端组合。Google自己的聊天平台Google Messaging Cloud(GMC)就是基于Node.JS+MongoDB实现的。
废话不多说,开始使用吧!
安装服务器端
1.环境配置。 官网 上提供的是Ubuntu14.04版的配置过程。见下图:
由于我用的服务器是Amazon Linux,用yum来安装。
git clone git://github.com/nodejs/node.git
cd node
git checkout v4.4.7
./configure
make
sudo make install
sudo su
vi /etc/sudoers
:/usr/local/bin```
3.安装imagemagick
5.安装Spika
6.安装gulp
sudo npm install gulp -g
7.编写配置文件
把Config.host和port的值设为自己服务器的hostname和port, 把Config.chatDatabaseUrl的值改为mongoDB的路径。最好用1024以上的port。mongoDB如果没有修改安全选项的话,最好用127.0.0.1。
8 . 运行项目
这时候可能会报错
找不到jsdoc。 解决方法:
然后再次运行
开启服务器
node src/server/main.js
这个时候用浏览器登陆
主机号:端口号/spika
就可以开始聊天啦!
除了web版,它还有android和ios版,下次再尝试吧:)