energy/README.zh_CN.md
2023-08-31 14:05:20 +08:00

7.9 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语言

特性

  • 具有丰富的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服务支撑, 多种选择

内置依赖&集成

  • LCL
  • CEF-CEF4Delphi

开发环境

基本需求

  • Golang >= 1.18
  • Energy 开发环境

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

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

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

git clone https://github.com/energye/energy.git

进入 energy 命令行目录

cd energy/cmd/energy

安装命令行工具

go install

执行安装命令

energy install .

入门指南 - 传送门

快速入门

必须: 你需要自己安装Go开发环境 Golang安装包

使用 energy-command-line 命令行工具自动安装开发环境依赖

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

系统支持

Windows MacOS Linux

32位 64位 测试系统版本
Windows Windows Windows Windows 7、Windows 10、Windows 11
MacOSX MacOS MacOS MacOSX 10.15
MacOS M1 M2 MacOS MacOS MacOS M2, Rosetta2 AMD
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

贡献者