energy/README.zh_CN.md
yanghy 030a8f59b3
Update README.zh_CN.md
go get github.com/energye/energy/v2
2023-07-17 11:19:41 +08:00

8.3 KiB
Raw Blame History

Energy是Go基于CEF构建桌面应用的框架

中文 | English


github release license repo

go-version

项目简介

energy 是 Go 基于 CEF(Chromium Embedded Framework) 开发的框架,内嵌 CEF 二进制

使用 Go 和 Web 端技术 ( HTML + CSS + JavaScript ) 构建支持Windows, Linux, MacOS跨平台桌面应用

需要会前端技术栈和略懂Go语言

特性

  • 开发环境简单,编译速度快,只需要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端很方便功能调用以及数据交互

内置依赖&集成

  • LCL
  • CEF-CEF4Delphi

开发环境

基本需求

  • Golang >= 1.18
  • Energy 开发环境

使用 energy 命令行工具自动安装开发环境

获取 energy 项目,或直接使用预编译命令行工具 下载地址

如果使用预编译命令行工具以下步骤可跳过

go get github.com/energye/energy/v2

进入 energy 命令行目录

cd energy/cmd/energy

安装命令行工具

go install

执行安装命令

energy install .

入门指南 - 传送门

快速入门

使用 energy 命令行工具自动安装环境依赖 energy install .

以example/simple示例为例

更新最新发布版本依赖

go mod tidy

在IDE中运行 simple 或 go run simple.go

example/simple 示例代码

package main

import (
	"github.com/energye/energy/v2/cef"
)

func main() {
	//全局初始化 每个应用都必须调用的
	cef.GlobalInit(nil, nil)
	//创建应用
	cefApp := cef.NewApplication()
	//指定一个URL地址或本地html文件目录
	cef.BrowserWindow.Config.Url = "https://energy.yanghy.cn"
	//运行应用
	cef.Run(cefApp)
}

运行应用

  • Windows、Linux

go run simple.go

  • MacOS

go run simple.go energy_env=dev

项目打包 参考

  1. 编译Go 程序编译go build simple.go 如果使用资源内置(HTML、CSS、JavaScript、Image等等)会把资源编译到执行文件内
  2. 复制把执行文件复制到ENERGY环境的CEF目录中即可
  3. 打包:使用制作安装包工具将其制作为安装包, 查阅各系统平台安装包制作
  4. 最后编译后的程序或安装包和CEF目录不再需要配置环境,在CEF根目录可直接运行

Go编译命令

  • go build -ldflags "-H windowsgui -s -w"

-ldflags

-H windowsgui 可选: windows 隐藏cmd黑窗口

-w 可选: 去除调试信息, 可减小执行文件大小

-s 可选: 去除符号表信息, 可减小执行文件大小


系统支持

Windows MacOS Linux

32位 64位 测试系统版本
Windows Windows Windows Windows 7、Windows 10
MacOS MacOS MacOS MacOSX 10.15
Linux Linux Linux Deepin20.8、Ubuntu18.04、LinuxMint21
Linux ARM Linux ARM Linux ARM Kylin-V10-SP1-2107

鸣谢 Jetbrains

JetBrains Logo (Main) logo.

感谢给项目点个Star, 或三连


QQ交流群

QQGroup


项目截图

Windows-10
Windows-7 32 & 64
Linux - 国产 Deepin
Linux - 国产 Kylin ARM
Linux - Ubuntu
MacOSX

开源协议

license