Migrated repository
Go to file
2021-07-05 11:26:07 +08:00
.github chore: 其他更新 2021-07-05 11:24:26 +08:00
docs docs: 优化文档 2021-07-05 11:26:07 +08:00
images docs: logo 2021-03-12 18:13:20 +08:00
packages chore(release): publish 2021-07-01 09:37:01 +08:00
.editorconfig feat(重写构建): 重写构建 2020-11-14 17:25:30 +08:00
.eslintrc.js fix: eslint babel parse 2021-02-08 19:21:30 +08:00
.fatherrc.js feat: 新增plugin-sass 2021-04-23 14:49:00 +08:00
.gitignore docs: 更新文档 2021-03-06 15:22:09 +08:00
CHANGELOG.md docs: 更新changlog和修复自动更新文档的workflow 2021-07-05 11:14:09 +08:00
commitlint.config.js feat(automation release): standard commit msg and release workflow 2020-09-25 17:59:16 +08:00
deploy.sh docs: vuepress2.0 2021-01-19 21:13:13 +08:00
lerna.json feat: patchRoutes延后,放在createRouter之前执行 2021-06-25 15:43:04 +08:00
LICENSE 更新MIT License 2020-09-25 17:59:15 +08:00
package.json chore: 去掉rc 2021-06-23 15:14:18 +08:00
README.md Update README.md 2021-04-27 14:09:09 +08:00
tsconfig.base.json docs: vuepress2.0 2021-01-19 21:13:13 +08:00
vetur.config.js feat: 添加插件集 2020-12-19 15:59:38 +08:00
yarn.lock feat: 添加 reqeust base 警告 2021-05-26 14:52:09 +08:00

fes.js

一个优秀的前端解决方案

GitHub issues MIT PRs Welcome

痛点

在开发一个前端项目之前,我们可能需要做如下准备工作:

  • 搭建开发环境
  • 约定代码规范
  • 封装API请求
  • 配置路由
  • 实现布局、菜单、导航
  • 实现登录
  • 权限管理
  • ...

除了准备工作之外,还会遇到很多相似的业务类型,比如中后台应用大多都是工作台、增删改查、权限、图表等。如果每次项目都完全手动处理一遍,不仅耗费时间,久而久之可能会存在多种技术栈、开发规范,导致开发流程不统一,历史项目越来越难维护。所以我们需要一套完整的解决方案,管理开发到部署整个流程。

Fes.js 是什么?

Fes.js 是一个好用的前端应用解决方案。Fes.js 以 Vue 3.0 和路由为基础,同时支持配置式路由和约定式路由,并以此进行功能扩展。配以覆盖编译时和运行时生命周期完善的插件体系,支持各种功能扩展和业务需求。

它主要具备以下功能:

  • 🚀 快速 内置了路由、开发、构建等并且提供测试、布局、权限、国际化、状态管理、API请求、数据字典、SvgIcon等插件可以满足大部分日常开发需求。

  • 🧨 简单 基于Vue.js 3.0上手简单。贯彻“约定优于配置”思想设计插件上尽可能用约定替代配置同时提供统一的插件配置入口简单简洁又不失灵活。提供一致性的API入口一致化的体验学习起来更轻松。

  • 💪 健壮 只需要关心页面内容减少写BUG的机会提供单元测试、覆盖测试能力保障项目质量。

  • 📦 可扩展 借鉴Umi实现了完整的生命周期和插件化机制插件可以管理项目的编译时和运行时能力均可以通过插件封装进来在 Fes.js 中协调有序的运行。

  • 📡 面向未来 在满足需求的同时我们也不会停止对新技术的探索。已使用Vue3.0来提升应用性能已使用webpack5提升构建性能和实现微服务未来会探索vite等新技术。

插件

插件 介绍
@fesjs/plugin-access 提供对页面资源的权限控制能力
@fesjs/plugin-enums 提供统一的枚举存取及丰富的函数来处理枚举
@fesjs/plugin-icon svg 文件自动注册为组件
@fesjs/plugin-jest 基于 Jest,提供单元测试、覆盖测试能力
@fesjs/plugin-layout 简单的配置即可拥有布局,包括导航以及侧边栏
@fesjs/plugin-locale 基于 Vue I18n,提供国际化能力
@fesjs/plugin-model 简易的数据管理方案
@fesjs/plugin-request 基于 Axios 封装的 request内置防止重复请求、请求节流、错误处理等功能
@fesjs/plugin-vuex 基于 Vuex, 提供状态管理能力
@fesjs/plugin-qiankun 基于 qiankun,提供微服务能力
@fesjs/plugin-sass 样式支持sass

像数 1, 2, 3 一样容易

使用 yarn

# 创建模板
yarn create @fesjs/fes-app myapp

# 安装依赖
yarn 

# 运行
yarn dev

使用 npm

# 创建模板
npx @fesjs/create-fes-app myapp

# 安装依赖
npm install 

# 运行
npm run dev

反馈

Github Issue 微信群 Fes.js开源运营小助手
@fesjs/fes.js/issues

Contributing

Pull requests and stars are always welcome.

For bugs and feature requests, please create an issue.

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

社区活动

Fesjs 社区有奖征文活动

为了 Fes.js 开源项目更好的运转,同时回馈开源社区,社区推出有奖征文活动!欢迎大家投递实践经验,给社区用户,更广泛的开发者提供借鉴。

经验输出也可以帮助到你系统沉淀自有项目,梳理工作思路,也能够帮助你的技术博客做宣传。优秀的实践案例将有机会邀请参与项目社区技术会议分享,赶快来参与吧。 请戳:https://mp.weixin.qq.com/s/nV4NG_OUUrdgtft8g_IW4g