Menu

Tree [a9a594] main dev /
 History

HTTPS access


File Date Author Commit
 .github 2023-10-05 yanghy yanghy [16375b] Update go.yml
 cef 2023-11-14 杨红岩 杨红岩 [864088] fix: 优化弹出无边框子窗口,任务栏无法切换窗口问题
 cmd 2023-11-13 杨红岩 杨红岩 [b8e778] A: 增加命令行工具MD5校验值
 common 2023-11-02 杨红岩 杨红岩 [8d95fa] 升及 liblcl v2.3.1
 consts 2023-10-26 杨红岩 杨红岩 [ecef5d] CEF 117 to 117
 example 2023-11-14 杨红岩 杨红岩 [38da62] U: 修改 frameless 示例
 logger 2023-08-29 杨红岩 杨红岩 [d87fc7] 增加Enable函数
 pkgs 2023-11-07 杨红岩 杨红岩 [0bc368] 调整 WndProc 回调函数,修改&增加winapi函数,增加 HDWP 类型
 types 2023-11-10 杨红岩 杨红岩 [0be584] fix: windows, lcl 窗口调整屏幕缩放比拖拽区域计算位置不正确问题
 .gitattributes 2023-07-19 杨红岩 杨红岩 [bd9617] U: .gitattributes
 .gitignore 2023-09-07 杨红岩 杨红岩 [c6dc19] 增加 winres,winicon工具包,用于生成windows 执行文件的icon,syso
 LICENSE 2023-02-14 杨红岩 杨红岩 [5f0cb3] License GPL3.0 => Apache License 2.0
 README.md 2023-11-15 杨红岩 杨红岩 [a9a594] U: README
 README.zh_CN.md 2023-11-15 杨红岩 杨红岩 [a9a594] U: README
 go.mod 2023-11-02 杨红岩 杨红岩 [8d95fa] 升及 liblcl v2.3.1
 go.sum 2023-11-02 杨红岩 杨红岩 [8d95fa] 升及 liblcl v2.3.1

Read Me

Energy is a framework for Go to build desktop applications based on CEF

中文 |
English


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


Project Introduction

Energy is a framework by Golang based on CEF(Chromium Embedded Framework), embedded
CEF binary

energy is a framework developed by Golang based on CEF(Chromium Embedded
Framework), embedded with CEF binary

Use Go and Web technology (HTML+CSS+JavaScript) to build cross-platform desktop applications that support Windows,
Linux and MacOS

Characteristic

  • Rich CEF API and LCL system native widgets
  • Development environment is simple and the compilation speed is fast. Only need Go and Energy.
  • Cross-Platform: You can package your code as Windows, domestic UOS, Deepin, Kylin, MacOS and Linux
  • Responsibilities
    • Go: Go is responsible for creating Windows, configuring CEF and implementing functions, creating various UI components, calling the low level of the system and some functions that JS cannot handle, such as: file flow, security encryption, high-performance processing, etc.
    • Web: HTML + CSS + JavaScript is responsible for the function of the client interface, you can make any interface you want.
  • Front-end technology: Support mainstream frameworks, such as Vue, React, Angular or pure HTML+CSS+JS.
  • Event driven: High performance event driven, based on IPC communication, Go and Web can call each other quality.
  • Esource loading: You can either read local resources or resources build into execution files without http services, or you can load resources using http services.

Built-in dependency&integration

  • LCL
  • CEF-CEF4Delphi

Development Environment

Basic needs

  • Golang >= 1.18
  • Energy (CEF, liblcl)

Environmental installation

  • Automatic installation development environment

Using the energy command-line tool Download address

Quick Start

Using energy Command line tools to install the complete development environment automatically.

Run a simple application by three steps

  1. Install development environment: energy install .
  2. Initiate an Application: energy init .
  3. Run the Application: go run main.go

sample code

main.go

package main

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

func main() {
    //Global initialization
    cef.GlobalInit(nil, nil)
    //Create an application
    app := cef.NewApplication()
    //Specify a URL address or local HTML file directory
    cef.BrowserWindow.Config.Url = "https://energy.yanghy.cn"
    //Run Application
    cef.Run(app)
}

Build

  1. Build:energy build .
  2. Package:energy package .
  3. Package Type:
    • windows UsingnsisCreate exe installation package
    • linux UsingdpkgCreate deb installation package
    • macos Generatexxx.app

System support

Windows
MacOS
Linux

32 Bit 64 Bit Test System Version
Windows Windows Windows Windows 7、Windows 10、Windows 11
MacOSX MacOSX MacOSX MacOSX 10.15
MacOS M1 M2 MacOS MacOS MacOS M2
Linux Linux Linux Deepin20.8、Ubuntu18.04、LinuxMint21
Linux ARM Linux ARM Linux ARM Kylin-V10-SP1-2107

Welcome to join

join energy throwing in the process of construction, there are many things that cannot be completed alone, if there are interested students who want to participate in the realization or learning of energy, you can contact me through WeChat or QQ.

If this project is helpful to you, please give me a star


ENERGY QQ Group & WeChat

QQ Group: 541258627 WeChat: sniawmdf


Thanks Jetbrains

JetBrains Logo (Main) logo.


Project screenshot

Windows-10

Windows-7 32 & 64


Linux - Deepin


Linux - Kylin ARM


Linux - Ubuntu


MacOSX


Public License

license

Contributors



Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.