51 Star 333 Fork 50

horsejs / HorseJs

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

健壮 | 优雅 | 迅捷
使用 HTML/JS/CSS 创建更快速、更稳定的桌面应用。
QQ交流群:650631559;微信公众号:桌面软件

说明

HorseJs 是一个与 Electron 类似的框架,与 Electron 不同的是它没有内置 Node.js,而是直接使用 C++ 提供了大部分 Electron 的能力,比如使用 JavaScript 访问文件、打开对话框、创建新窗口等。由于没有 Node.js,所以 HorseJs 运行速度更快、占用内存更少、稳定性也更高。

HorseJs 可以直接加载 webpack 或 Rollup 构建的任何前端项目,由于这些构建工具会把 npm 包内的代码捆扎到你的最终产物中,所以开发者可以在这类项目中使用任何 npm 包,HorseJs 并不排斥 Node.js 的生态。

使用 HorseJs 开发应用,不必考虑任何渲染进程、主进程以及这些进程之间通信的问题。因为这些工作 HorseJs 已经帮开发者做掉了。开发者只要专注自己的业务逻辑即可。

起步

第一步

下载 HorseJs 的二进制文件(扩展名为 7z 的压缩包)解压后,启动压缩包内的 HorseJs.exe,进入 Demo 界面可以看到随 SDK 附带的各种 API 的示例;

第二步

在你的前端工程下执行如下指令安装 HorseJs 的 npm 包

npm install horsejs.org

之后你就可以使用如下方式调用 HorseJs 为你提供的 API 了

import { horse } from "horsejs.org";
await horse.window.openDevTool();

HorseJs 的 npm 包并非原生模块,无需本地编译;支持 TypeScirpt 类型

你可以自由的使用 Vue、React、Angular 或者其他的现代前端框架构建你的前端项目

第三步

修改第一步中下载的文件:HorseJs\app\horse.config.json

使其 startPath 配置项指向你的调试地址,比如:

"startPath": "http://localhost:3000/"

再次启动 HorseJs.exe,观察你的调试页面在 HorseJs 下的表现

HorseJs 内置 Chromium 浏览器核心,支持热更新,你可以把它当做一个浏览器

第四步

开发完成后,把你的前端工程构建产物 ,放置到 HorseJs\app\ 目录下,(该目录下原有的文件,除 horse.config.json 外均应删除),并再次修改 horse.config.json 的 startPath 配置项,使其指向你的起始页面,比如:

"startPath": "app/index.html"

第五步

你可以使用 Resource Hacker 之类的工具修改 HorseJs.exe 的图标或属性信息;

你可以使用 NSISInnoSetup 之类的工具把 HorseJs 目录下的内容制作成一个安装文件,分发给你的用户;

以后我会提供相应的工具链方便开发者使用它们

文档

其他

  1. 本项目基于 MIT 协议开源,大家可以放心使用;
  2. 目前此项目尚处于实验验证阶段,将来我会逐步为其添加各项功能及辅助的工具;
  3. 欢迎并感谢大家提 Issue 和 Pull Request;
  4. 本项目基于 cef 和 wxWidgets 开发,大量参考了 Electron 、Node.js、 Chromium 的源码,Thanks。

赞助

微信收款码

如果赞助者希望把名字添加到 HorseJs 主页,可以通过 QQ (412588801)联系我

MIT License Copyright (c) 2021 horsejs Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

使用HTML/JS/CSS创建更快速、更稳定的桌面应用 展开 收起
C++ 等 5 种语言
MIT
取消

发行版 (10)

全部

贡献者

全部

近期动态

加载更多
不能加载更多了
C++
1
https://gitee.com/horsejs/horsejs.git
git@gitee.com:horsejs/horsejs.git
horsejs
horsejs
HorseJs
master

搜索帮助