项目简介
Energy 是 Go 基于 CEF(Chromium Embedded Framework) 开发的框架,内嵌 CEF 二进制,用于构建Windows、Mac OS X和Linux桌面应用程序
使用 Go 和 Web 端技术 ( HTML + CSS + JavaScript ) 构建支持Windows, Linux, MacOS跨平台桌面应用
基于Go和CEF跨平台特性
特性
> 具有丰富的CEF API 和 LCL 系统原生小部件
> 开发环境简单, 编译速度快, 只需要Go和Energy依赖的CEF二进制框架
> 跨平台: 一套代码可以打包成 Windows, 国产UOS、Deepin、Kylin, MacOS, Linux
> 语言职责
>> Go: Go负责窗口创建、CEF配置和功能实现、各种UI组件创建、系统低层调用,和JS处理不了的功能如: 文件流、安全加密、高性能处理等等
>> Web: HTML + CSS + JavaScript 负责客户端界面的功能, 做出任意你想要的界面
> 前端技术: 支持主流前端框架例如:Vue、React、Angular, 或纯HTML+CSS等等
> 事件驱动: 高性能事件驱动, 基于IPC通信,实现Go和Web端很方便功能调用以及数据交互
> 资源加载: 支持本地或内置到执行文件, 不需要http服务支撑, 多种选择
内置依赖&集成
开发环境
基本需求
golang >= 1.18
energy 开发环境(CEF, liblcl)
快速入门
使用 energy 命令行工具自动安装开发环境完整依赖 下载地址
三个步骤运行一个简单的应用
- 安装开发环境 energy install .
- 初始化应用 energy init .
- 运行应用 go run main.go
示例代码 main.go
package mainimport (
"github.com/energye/energy/v2/cef"
)
func main() {
//全局初始化 每个应用都必须调用的
cef.GlobalInit(nil, nil)
//创建应用
app := cef.NewApplication()
//指定一个URL地址,或本地html文件目录
cef.BrowserWindow.Config.Url = "https://www.baidu.com"
//运行应用 cef.Run(app)
}
项目打包
- 编译:energy build .
- 打包:energy package .
- 最后自动生的安装包:
- windows 使用nsis工具生成exe安装包
- linux 使用dpkg制作deb安装包
- macos 生成demo.app