# electron **Repository Path**: xeajs/electron ## Basic Information - **Project Name**: electron - **Description**: 企业级基于Electron + React + Koa + Typescript 技术栈实现的一套基础架构解决方案、快速开发、一键智能打包、快速交付 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: https://github.com/xeajs/electron - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 25 - **Created**: 2020-12-17 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # @xeajs/electron 快速开始、渐进式、沉浸式、高可用、可配置、模块化、语义化、一键开发、一键打包。 ## 系统架构 ## Install ```bash git clone https://github.com/xeajs/electron myapp ``` ## 跨端 * exe Windows7、Window10 (x86、x64) * app Darwin (Mac Os) * deb Linux (Ubuntu) ## 技术栈 ### `内核` ```js electron ==> 客户端运行时 electron-builder ==> 客户端打包 ``` ### `主进程 - 本地服务服务端` ```js Typescript node koa nedb ==> Node嵌入式数据库、本地持久化、加密 ... ``` ### `渲染进程 - 窗口界面` ```js Typescript React React-router Mobx axios antd dayjs ==> 日期处理工具、轻量级 ... ``` ### `CLI 构建` ```js webpack babel babel/preset-typescript ... ``` ### `CLI 效率、工具` ```js prettier eslint ==> 可配置开关、开发环境运行时 tslint ==> 可配置开关、开发环境运行时、子进程基于 tsc -w husky lint-staged ... ``` ## 核心能力 * 一键式进入开发模式,一键打包。良好的开发体验和交付体验 * electron 提供项目运行时 * nodejs 提供CLI 脚本能力 * webpack 提供React、Ts代码编译和构建 * 区分前端代码和主进程代码分开编译和引用 * 项目代码使用TS编写 * 提供常规的前端开发体验,热更新,webpack编译速度优化 * 基于 React.lazy 和 React.Suspense 实现前端路由懒加载 * eslint 提供代码 `eslint` 检测 * tsc 提供代码 `tslint` 检测、不输出文件,只进行静态类型检测 * sort-imports vscode 插件提供自动对 import 排序 * 内置 vscode 编辑器的项目配置 * 内置 `git 钩子` 代码提交到仓库时检测。检测es代码风格,检测ts静态类型 * 内置全局命名空间 `$$`, 提供全局自定义功能 * 内置自定义Event, 基于 ts 约束 订阅时间名字,挂载到 `$$` * 内置类型判断辅助函数,挂载到 `$$` * 内置配置持久化功能 自动检测/创建磁盘存储目录和文件 * 内置配置持久化功能 `setting`,持久化到磁盘 setting.json, 引用对象挂载到 `$$` * 内置配置持久化功能 `nedb数据库`,持久化到磁盘,主进程自动引用 * 内置CI构建打包软件名称配版本号 `Application Setup Version-BUILD_NUMBER.exe|app|deb` * 内置日志持久化,基于 `$$.log` 输出的日志,自动持久化收集到本地,日志默认保留7天,可配置 ## styled-jsx * 模式 css in js * 框架 styled-jsx * vscode css 代码高亮插件 vscode-styled-jsx * vscode css 代码提示插件 styled-jsx Language Server 1.0.1 * 注意事项, 样式输出报错, 大括号换行无法检测到样式 * @See:

错误写法

```jsx ```

正确写法

``` jsx ``` ## TODO * Demo页面设计和优化,更好的便捷扩展 * 文档README优化 ## CHANGELOG See: [changelog](docs/CHANGELOG.md) ## 写在最后 1. 欢迎交流 1. 欢迎体验 1. 欢迎 Issues 1. 感谢 Star 1. 联系作者 [webhref.com](https://www.webhref.com/)