Energy is a GUI framework developed by Go, based on LCL and CEF
中文 | English
- Energy is a GUI framework developed in Go, based on LCL and CEF(Chromium Embedded Framework), which is used to develop cross-platform desktop applications for Windows, MacOS, and Linux.
- LCL alone can create lightweight native applications, or can be combined with CEF to create more feature-complete applications.
- Construct cross-platform desktop applications that support Windows, Linux, and MacOS using Go and web technologies (HTML + CSS + JavaScript).
- 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 communication based on IPC allowing intercommunication between Go and Web.
- Resource loading: You can either read local resources or resources built into execution files either with or without HTTP services.
- Golang >= 1.18
- Energy (CEF, liblcl)
Automatic installation development environment using the energy command-line tool
Guide to Start - Link
- Install development environment:
energy install
- Initiate an Application:
energy init
- Run the Application:
go run main.go
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://energye.github.io"
//Run Application
cef.Run(app)
}
- Build:
energy build
- Package:
energy package
- Package Type:
- windows: Using
nsis
create exe installation package - linux: Using
dpkg
create deb installation package - macos: Generate
xxx.app
- windows: Using
OS | 32-bit | 64-bit |
---|---|---|
Windows | ️✔️ | ️✔️ |
MacOSX (Intel) | ❌ | ️✔️ |
MacOS (Apple Silicon) | ❌ | ️✔️ |
Linux | ️✔️ | ️✔️ |
Linux ARM | ️✔️ | ️✔️ |
Innovative functions break through difficulties. Light up the star
and strive forward together!