energy/README.md
2023-09-15 19:33:08 +08:00

9.0 KiB
Raw Blame History

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

中文 | English


github release license repo

go-version

Project Introduction

Energy is a framework developed by Golang based on CEF(Chromium Embedded Framework), embedded with 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

Knowledge of the front-end technology stack and some knowledge of the Go language is required

Characteristic

  • Rich CEF API and LCL system native widgets
  • development environment is simple and the compilation speed is fast. Only the Go development environment and the CEF binary framework that Energy depends on are needed
  • cross-platform: A set of code can be packaged into Windows, domestic UOS, Deepin, Kylin, MacOS, Linux
  • Language responsibilities
  • Go: Go is responsible for window creation, CEF configuration and function implementation, creation of various UI components, low-level system calls, and functions that JS cannot handle, such as file stream, security encryption, high-performance processing, etc.
  • Web: HTML + CSS + JavaScript responsible for the function of the client interface, make any interface you want, Any front-end technology framework can be used
  • front-end technology: Support mainstream front-end frameworks, such as Vue, React, Angular or pure HTML+CSS
  • event driven: High performance event driven, IPC based communication, Go and Web side is very convenient function call and data interaction
  • resource loading: supports local or built-in to executable files, http service support is not required, multiple choices.

Built-in dependency&integration

  • LCL
  • CEF-CEF4Delphi

Development Environment

Basic needs

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

Environmental installation

  • Automatic installation development environment

Automatically install the complete development environment using the energy command-line tool Download address

This installation process selectively downloads the following frameworks and tools from the network

Name Platform illustrate
Golang ALL Golang Development Environment
CEF, liblcl ALL CEF Framework
NSIS Windows Windows Installation package production tool
UPX Windows, Linux Execute file compression tool
7z Windows, Linux CEF Framework compression tool

Getting Started Guide - Transfer gate

Quick Get Start

Using energy Command line tools automatically install the complete development environment

Run a simple application in three steps

  1. Installation and development environment: energy install .
  2. Initiate Application: energy init .
  3. Run 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)
}

Pack Project

  1. buildenergy build .
  2. packageenergy package .
  3. The final automatically generated installation package
    • 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 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

Thanks Jetbrains

JetBrains Logo (Main) logo.

Thank you for ordering a Star for the project


QQ Group

QQGroup


Project screenshot

Windows-10
Windows-7 32 & 64
Linux - Deepin
Linux - Kylin ARM
Linux - Ubuntu
MacOSX

Public License

license

Contributors