组织介绍

Energy是Go基于LCL和CEF开发的GUI框架

中文 | English


go-version github release Build Status repo Go Report Go Reference Discord codecov contributors license

项目简介

Energy 是 Go 基于 LCLCEF(Chromium Embedded Framework) 开发的 GUI 框架, 用于开发Windows、MacOS 和 Linux 跨平台桌面应用.

可仅用 LCL 创建轻量级原生应用,或结合 LCL 与 CEF 打造功能更全的应用程序

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

特性

  • 具有丰富的 CEF API 和 丰富的 LCL 系统原生控件
  • 开发环境简单, 编译速度快, 仅需Go和Energy依赖的CEF二进制框架
  • 跨平台: 一套代码可以打包成 Windows, 国产UOS、Deepin、Kylin, MacOS, Linux
  • Golang: 窗口管理、CEF API封装&配置、功能实现、各种UI组件创建、系统低层调用和JavaScript处理不了的功能,如: 文件流、安全加密、高性能处理等
  • Web: HTML + CSS + JavaScript 负责客户端界面的功能, 做出任意你想要的界面
  • 前端技术: 支持主流前端框架。例如:Vue、React、Angular 和 原生HTML+CSS+JS等
  • 事件驱动: 高性能事件驱动, 基于IPC通信,实现Go和Web端迅捷调用及数据交互
  • 资源加载: 可无需http服务支撑,直接读取本地资源或内置到执行文件的资源, 也支持http服务加载资源

内置依赖&集成

  • LCL
  • CEF-CEF4Delphi

开发环境

基本需求

  • Golang >= 1.18
  • Energy 开发环境(CEF, liblcl)

环境安装

使用 energy cli 自动安装完整开发环境

入门指南 - 传送门

快速入门

快速入门

三个步骤运行一个简单应用

  1. 安装开发环境: energy install
  2. 初始化应用: energy init
  3. 运行应用: go run main.go

示例代码

main.go

package main

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

func main() {
   //全局初始化
   cef.GlobalInit(nil, nil)
   //创建应用
   app := cef.NewApplication()
   //指定一个URL地址,或本地html文件目录
   cef.BrowserWindow.Config.Url = "https://energye.github.io"
   //运行应用
   cef.Run(app)
}

应用打包

  1. 编译:energy build
  2. 打包:energy package
  3. 自动生成的安装包
    • windows 使用nsis工具生成exe安装包
    • linux 使用dpkg制作deb安装包
    • macos 生成xxx.app

系统支持

Windows MacOS Linux

OS 32-bit 64-bit
Windows ️✔️ ️✔️
MacOSX (Intel) ️✔️
MacOS (Apple Silicon) ️✔️
Linux ️✔️ ️✔️
Linux ARM ️✔️ ️✔️

v3.0 相关项目

其它项目


ENERGY QQ交流群 & 微信

创新功能破难题,点亮 star 共奋进!


QQ交流群: 541258627 微信: sniawmdf


鸣谢 Jetbrains

JetBrains Logo (Main) logo.


项目截图

Windows-10
Windows-7 32 & 64
Windows-XP-SP3
Linux - Deepin
Linux - Kylin ARM
Linux - Ubuntu
MacOS

开源协议

license

贡献者

成就
297
Star
55
Fork
成员(1)
299760 snxamdf 1675754835
yanghy

搜索帮助

0d507c66 1850385 C8b1a773 1850385