Energy
Energy is a framework developed by Go language based on CEF (Chromium Embedded Framework) for developing cross-platform desktop applications for Windows, Mac OS X, and Linux
Install / Use
/learn @energye/EnergyREADME
中文 | English
Project Introduction
- 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).
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 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.
ENERGY New 3.0
Built-in dependency&integration
Development Environment
Basic needs
- Golang >= 1.18
- Energy (CEF, liblcl)
Environmental installation
Automatic installation development environment using the energy command-line tool
Guide to Start - Link
Quick Start
Run a simple application by three steps
- Install development environment:
energy install - Initiate an Application:
energy init - 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://energye.github.io"
//Run Application
cef.Run(app)
}
Build
- Build:
energy build - Package:
energy package - Package Type:
- windows: Using
nsiscreate exe installation package - linux: Using
dpkgcreate deb installation package - macos: Generate
xxx.app
- windows: Using
System support
| OS | 32-bit | 64-bit | |-----------------------|--------|--------| | Windows | ️✔️ | ️✔️ | | MacOSX (Intel) | ❌ | ️✔️ | | MacOS (Apple Silicon) | ❌ | ️✔️ | | Linux | ️✔️ | ️✔️ | | Linux ARM | ️✔️ | ️✔️ |
v3.0 Related Projects
Other Projects
ENERGY QQ Group & WeChat
Innovative functions break through difficulties. Light up the star and strive forward together!
<p align="center"> <img src="https://energye.github.io/imgs/assets/qq-group.jpg" width="250" title="QQ Group: 541258627" alt="QQ Group: 541258627"> <img src="https://energye.github.io/imgs/assets/we-chat.jpg" width="250" title="WeChat: sniawmdf" alt="WeChat: sniawmdf" style="margin-left: 30px;"> </p>
Thanks Jetbrains
<p align="center"> <a href="https://www.jetbrains.com?from=energy"> <img src="https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg" alt="JetBrains Logo (Main) logo."> </a> </p>Project screenshot
Windows-10
<img src="https://energye.github.io/imgs/readme/frameless-windows-10.png">Windows-7 32 & 64
<img src="https://energye.github.io/imgs/readme/frameless-windows-7-64.png"> <img src="https://energye.github.io/imgs/readme/frameless-windows-7-32.png">Windows-XP-SP3
<img src="https://energye.github.io/imgs/readme/windows-xp-sp3.png">Linux - Deepin
<img src="https://energye.github.io/imgs/readme/frameless-deepin-20.8.png"> <img src="https://energye.github.io/imgs/readme/frameless-deepin-hide-20.8.png">Linux - Kylin ARM
<img src="https://energye.github.io/imgs/readme/frameless-kylin-arm-V10-SP1.png"> <img src="https://energye.github.io/imgs/readme/frameless-kylin-arm-hide-V10-SP1.png">Linux - Ubuntu
<img src="https://energye.github.io/imgs/readme/frameless-ubuntu-18.04.6.png"> <img src="https://energye.github.io/imgs/readme/frameless-ubuntu-hide-18.04.6.png">MacOSX
<img src="https://energye.github.io/imgs/readme/frameless-macos.png">Public License
Contributors
<a href="https://github.com/energye/energy/graphs/contributors"> <img src="https://opencollective.com/energy/contributors.svg?width=890&button=false" /> </a>Related Skills
node-connect
341.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
xurl
341.8kA CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.
frontend-design
84.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
