Star 4.1k!Gitee GVP开源项目!新一代桌面应用开发框架 ElectronEgg!

前言

随着现代技术的快速升级迭代及发展,桌面应用开发已经变得越来越普及。然而对于非专业桌面应用开发工程师在面对这项任务时,可能会感到无从下手,甚至觉得这是一项困难的挑战。

本篇文章将分享一种新型桌面应用开发框架 ElectronEgg,它能够帮助非专业人士也能轻松地开发高质量的桌面应用。

ElectronEgg 项目介绍

electron-egg 是一个简单、快速、功能丰富的 JavaScript 跨平台桌面软件开发框架。

Gitee:https://gitee.com/dromara/electron-egg

GitHub:https://github.com/dromara/electron-egg

1、作者开发该项目背景?

各语言开发桌面应用的优缺点:

语言技术优点缺点
C#wpf专业的桌面软件技术,功能强大学习成本高
Javaswing/javaFx跨平台和语言流行GUI库少,界面不美观
C++Qt跨平台,功能和类库丰富学习成本高
Swift
非跨平台,文档不友好,UI库少
JSelectron跨平台,入门简单,UI强大,扩展性强内存开销大,包体大。

目前国内的开发者将近700万,桌面软件受限于学习门槛和移动化趋势,渐渐平庸。但我们日常工作中,又离不开桌面软件,因此希望有一个学习门槛低,支持多平台的软件框架。electron-egg 就是在这种需求下,诞生的。

2、项目里程碑介绍

electron-egg 从开源至今已经迭代了50+大中小版本,目前最新版本为3.9.0。在项目开源后不久就荣获了Gitee GVP 最有价值开源项目,目前Gitee Star 4.1K,GitHub Star 1.3K。

该框架已广泛应用于记账、政务、企业、医疗、学校、股票交易、ERP、娱乐、视频等领域。

3、功能特性

  • 跨平台`:一套代码,可以打包成windows版、Mac版、Linux版、国产UOS、Deepin、麒麟等。

  • 架构`:单业务进程/模块化/多任务(进程,线程,渲染进程),让开发大型项目变的简单。

  • 简单高效`: 只需学习 js 语言。

  • 前端独立` 支持任何前端技术,如:vue、react、html、vite 等等。

  • 工程化`:可以用前端、服务端的开发思维,来编写桌面软件。

  • 高性能`:事件驱动、非阻塞式IO。

  • 功能丰富`:配置、通信、任务、插件、数据库、升级、打包、工具… 应有尽有。

  • 安全`:支持字节码加密、压缩混淆加密。

  • •功能demo`:桌面软件常见功能,框架集成或提供demo。

安装使用

1、下载(采用Git命令下载或手动下载zip包)

# gitee   git clone https://gitee.com/dromara/electron-egg.git   # or   # github   git clone https://github.com/dromara/electron-egg.git

2、npm安装

# 设置国内镜像源(加速)
npm config set registry=https://registry.npmmirror.com

#如果下载electron慢,配置如下
npm config set electron_mirror=https://registry.npmmirror.com/-/binary/electron/

# 根目录,安装 electron 依赖
npm i

# 进入【前端目录】安装 frontend 依赖
cd frontend 
npm i

3、运行项目

npm run start

应用的场景

1、博客Web项目打包到本地

2、游戏助手(英雄联盟)

3、视频/音乐客户端

总结

electron-egg 项目当然对于前端工程师来说,可能上手更加容易些,毕竟其唯一要求就是需要懂js。

但对于我们这些Python、Java后端工程师来说也可以使用。因为框架只需要最终构建的资源(html/css/js)即可,然后其采用的是MVC编程模式,对于其他语言的后端工程师来说降低的二次开发的难度。

总的来说,是一款不错的桌面应用开源项目。有兴趣的朋友们可以下载试试,针对自己的构想或业务进行二次开发。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/248282.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器学习支持向量机(SVM)

svm与logstic异同 svm支持向量机,因其英文名为support vector machine,故一般简称SVM,通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化&#x…

探索多功能SQL数据库编辑器 - Richardson Software RazorSQL

在当今数字化时代,SQL数据库的管理和编辑是许多企业和开发人员必不可少的任务。为了提高生产力和简化数据库操作,Richardson Software推出了一款强大而多功能的SQL数据库编辑器 - RazorSQL。 RazorSQL是一款功能全面的数据库管理工具,可适用…

ansible的基本使用

本章主要介绍在RHEL8中如何安装ansible 及 ansible 的基本使用。 ansible是如何工作的在 RHEL8中安装ansible编写ansible.cfg和清单文件ansible 的基本用法 如果管理的服务器很多,如几十台甚至几百台,那么就需要一个自动化管理工具了, ansi…

使用opencv的Laplacian算子实现图像边缘检测

1 边缘检测介绍 图像边缘检测技术是图像处理和计算机视觉等领域最基本的问题,也是经典的技术难题之一。如何快速、精确地提取图像边缘信息,一直是国内外的研究热点,同时边缘的检测也是图像处理中的一个难题。早期的经典算法包括边缘算子方法…

环境搭建及源码运行_java环境搭建_maven

1、介绍 1)管理项目依赖和版本 统一的项目依赖和版本管理 2)Maven支持多模块项目管理 通过定义父子模块的关系来管理多个子模块的构建和依赖关系。使用Maven可以实现多模块项目的统一管理和构建,从而提高项目的可维护性和可重用性。 3&#x…

初识Python解释器————解释器模式(后续更新...)

学习网页: Welcome to Python.orghttps://www.python.org/https://www.python.org/ Python解释器 Python解释器是用于执行Python代码的程序。Python解释器将Python代码转换为机器语言并执行它。 Python解释器有多种实现,包括CPython、IPython、Jython…

GPT 魔力涌现

GPT 二、Prompt 的典型构成 角色:给 AI 定义一个最匹配任务的角色,比如:「你是一位软件工程师」「你是一位小学老师」指示:对任务进行描述上下文:给出与任务相关的其它背景信息(尤其在多轮交互中&#xff…

Feign调用服务报错:Load balancer does not have available server for client:xxx

1.说一下遇到的bug:,(黑马程序员springcloud的第30集,基于Feign远程调用) 3个服务正常启动: 访问http://localhost:8080/order/101 服务器报错日志:(orderservice想调用userservice结果找不到userservice&…

【EMQX】通过EMQX webhook实现转发消息到Python web服务器

EMQX webhook消息转发Web服务器 一、前言二、实现1、EMQX服务器搭建EMQX下载、安装、启动 2、本地Web服务搭建创建Flask项目代码 3、EMQX中创建webhook数据桥接4、EMQX中创建数据转发规则 三、效果 一、前言 需求:获取设备通过mqtt协议发送过来的数据并将数据保存到…

cgal教程 3D Alpha Wrapping

文章目录 3D Alpha Wrapping (3D alpha 包裹)1 介绍2 方法2.1 算法2.2 保证 3 接口4 选择参数4.1 alpha4.2 Offset4.3 关于“双面”包裹的注意事项 5 性能6 例子 3D Alpha Wrapping (3D alpha 包裹) 原文地址: https://doc.cgal.org/latest/Alpha_wrap_3/index.html#Chapter_3D…

数智赋能进行时 百望云荣获第四届长三角“金融科技领军企业”奖

近日,由上海金融业联合会、上海市银行同业公会、华东师范大学指导,《金融电子化》杂志社有限责任公司、华东师范大学长三角金融科技研究院等单位联合主办,上海市互联网金融行业协会等单位协办的“2023长三角金融科技节——长三角经济圈金融科…

微服务实战系列之ZooKeeper(上)

前言 历经1个多月的创作和总结,纵观博主微服务系列博文,大致脉络覆盖了以下几个方面: 数据方面(缓存&安全) 比如Redis、MemCache、Ehcache、J2cache(两级缓存框架)、RSA加密、Sign签名…传…

力扣22. 括号生成(java 回溯法)

Problem: 22. 括号生成 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 我们首先要知道,若想生成正确的括号我们需要让右括号去适配左括号,在此基础上我们利用回溯去解决此题目 1.题目给定n个括号,即当回溯决策路径长度等于 2 n 2n…

学习笔记9——JUC三种量级的锁机制

学习笔记系列开头惯例发布一些寻亲消息 链接:https://baobeihuijia.com/bbhj/contents/3/197325.html 多线程访问共享资源冲突 临界区:一段代码块存在对共享资源的多线程读写操作,称这段代码块为临界区 竞态条件:多个线程在临界…

Anaconda文件目录(打开默认路径)更改

Anaconda 文件默认目录更改 每次打开 Anaconda 都在C盘怎么办,如何改为D盘或是其他盘符位置? 可以进行下述操作。 1. 单次修改路径 单次修改路径:在 exe 文件(Anaconda Prompt (Anaconda_py))中写入下面代码: jupyter notebook …

微信小程序ec-canvas(echarts)显示地图【以甘肃省为例】

文章目录 一、效果图二、实现1、下载echarts插件2、定制图形,生成 echarts.min.js 文件3、小程序中使用(1)下载甘肃地图(2)使用 参考文档《微信小程序使用echarts显示全国地图》《如何在微信小程序开发中使用echarts以…

详解Keras3.0 KerasCV API: StableDiffusion image-generation model

Stable Diffusion 图像生成模型,可用于根据简短的文本描述(称为“提示”)生成图片 keras_cv.models.StableDiffusion(img_height512, img_width512, jit_compileTrue) 参数说明 img_height:int,要生成的图像的高度…

安路IP核应用举例(OSC、UART)

1.OSC(内部振荡器) 按照Project->New Project顺序新建工程后,后按照Tools->IP Generator顺序,创建IP核,如下图: 安路FPGA的内置OSC振荡模块频率可选30MHz、60MHz。 可选Verilog或VHDL语言。 如图,生成的.v文件只…

美国 AGU 发布 AI 应用手册,明确 6 大指导方针

爆发性的 AI 应用:风险与机遇并存 在空间和环境科学领域,AI 工具的应用越来越广泛——诸如天气预报和气候模拟,能源及水资源管理等等。可以说,我们正在经历前所未有的 AI 应用爆发,面对其中的机遇与风险,更…

DTC 故障严重程度

文章目录 简介DTC严重性 位定义DTC 类别定义参考 简介 DTCSeverityMask(DTC严重性掩码)/ DTCSeverity(DTC严重性)包含了DTC严重性和DTC类别信息。 DTCSeverityMask(DTC严重性掩码)/DTCSeverit…