docs(projects): add README

This commit is contained in:
Soybean
2024-01-17 02:06:19 +08:00
parent 4d8469e2d1
commit 2371ba8448
3 changed files with 213 additions and 139 deletions

204
README.md
View File

@@ -1,201 +1,127 @@
<div align="center">
<img src="./public/favicon.svg" style="width: 160px;"/>
<img src="./public/favicon.svg" width="160" />
<h1>Soybean Admin</h1>
<span>English | <a href="./README.zh_CN.md">中文</a></span>
</div>
[![license](https://img.shields.io/badge/license-MIT-green.svg)](./LICENSE) ![](https://img.shields.io/github/stars/honghuangdc/soybean-admin) ![](https://img.shields.io/github/forks/honghuangdc/soybean-admin)
## 注意
## Introduction
Soybean Admin 正在重构重构后的版本为v1.0,变更点如下:
[Soybean Admin](https://github.com/soybeanjs/soybean-admin) is a fresh and elegant admin template based on Vue3, Vite5, TypeScript, Pinia and UnoCSS. It uses the latest popular front-end technology stack, built-in rich theme configuration, has a very high code specification, and is has an automatic, intelligent file routing system. It use ApiFox to generate mock data, out-of-the-box admin solutions, can also be used for learning reference.
- 采用基于 pnpm 的 monorepo 管理项目
- 第三方 soybeanjs 的工具库直接抽离到项目中(ElegantRouter除外),不再作为依赖
- 采用全新的路由插件 [ElegantRouter](https://github.com/soybeanjs/elegant-router)
- 使用基于 [ApiFox](https://apifox.com/) 的远程 mock 代替本地 mock
- 基于现有路由插件迁移至新路由插件的指南
- 代码实现遵循 SoybeanJS 的代码规范
- 项目的 main 分支保留系统核心部分,示例页面和无关核心的插件移至 example 分支
- 完整 1.0 版本的文档
## Features
> 1.0版本仍然采用 NaiveUI
- **Popular technology stack**Vue3, Vite5, TypeScript, Pinia, UnoCSS.
- **Clean Structure**Use pnpm monorepo, clean and elegant structure, easy to maintain.
- **TypeScript**Strictly typed, easy to maintain.
- **Theme**Built-in rich theme configuration, easy to incorporate UnoCSS.
- **File routing System**Automatic, intelligent file routing system. more details in [Elegant Router](https://github.com/soybeanjs/elegant-router).
- **Auth Router**: Support front-end static routing and back-end dynamic routing.
- **Code Specification**Very high code specification. more details in [SoybeanJS Code Standard]().
> 同时推出需要商业授权的 AntDesignVue 版本 和 ElementPlus 版本
## Preview
AntDesignVue版本进度 90%
[预览地址](https://antd.soybeanjs.cn/)
- [NaiveUI](https://admin.soybeanjs.cn)
- [AntDesign Vue](https://antd.soybeanjs.cn)
## 简介
## Documentation
[Soybean Admin](https://github.com/honghuangdc/soybean-admin) 是一个基于 Vue3、Vite3、TypeScript、NaiveUI、Pinia 和 UnoCSS 的清新优雅的中后台模版,它使用了最新流行的前端技术栈,内置丰富的主题配置,有着极高的代码规范,基于文件的路由系统以及基于 Mock 的动态权限路由,开箱即用的中后台前端解决方案,也可用于学习参考。
- [Docs](https://docs.soybeanjs.cn)
## 特性
## Repositories
- **最新流行技术栈**:使用 Vue3/Vite 等前端前沿技术开发, 使用高效率的 npm 包管理器 pnpm
- **TypeScript**: 应用程序级 JavaScript 的语言
- **主题**:丰富可配置的主题、暗黑模式,基于原子 css 框架 - UnoCss 的动态主题颜色
- **代码规范**:丰富的规范插件及极高的代码规范
- **文件路由系统**:基于文件的路由系统,根据页面文件自动生成路由声明、路由导入和路由模块
- **权限路由**:提供前端静态和后端动态两种路由模式,基于 mock 的动态路由能快速实现后端动态路由
- **请求函数**:基于 axios 的完善的请求函数封装,提供 Promise 和 hooks 两种请求函数,加入请求结果数据转换的适配器
| Repository | Github | Gitee | Preview |
| --- | --- | --- | --- |
| NaiveUI | [github](https://github.com/honghuangdc/soybean-admin) | [gitee](https://gitee.com/honghuangdc/soybean-admin) | [preview](https://admin.soybeanjs.cn) |
| AntDesign Vue | [github](https://github.com/soybeanjs/soybean-admin-antd) | [gitee](https://gitee.com/honghuangdc/soybean-admin-antd) | [preview](https://antd.soybeanjs.cn) |
## SoybeanJS 工具库
## Example Images
- [@soybeanjs/cli](https://github.com/soybeanjs/cli): SoybeanJS 命令行工具包含发布、git 和依赖等相关的实用命令
- [@soybeanjs/changelog](https://github.com/soybeanjs/changelog): 根据 git tags 和 commits 生成 changelog [示例](./CHANGELOG.md)
- [eslint-config-soybeanjs](https://github.com/soybeanjs/eslint-config): SoybeanJS 的 eslint 预设配置
- [@soybeanjs/materials](https://github.com/soybeanjs/materials): SoybeanJS 的物料仓库
- [@soybeanjs/vite-plugin-vue-page-route](https://github.com/soybeanjs/vite-plugin-vue-page-route): SoybeanAdmin 的路由插件
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin01.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin02.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin03.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin04.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin05.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin06.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin07.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/soybean-admin08.png)
## 基于 SoybeanAdmin 二次开发的项目
- [electron-mock-admin](https://github.com/lixin59/electron-mock-api): 一个 Mock Api 管理系统,帮助前端开发伙伴快速实现接口的 mock。
- [T-Shell](https://github.com/TheBlindM/T-Shell): 是一个可配置命令提示的终端模拟器和 SSH 客户端。
## Usage
## 在线预览
- Environment Prepare
- [Soybean Admin 预览地址](https://admin.soybeanjs.cn/)
- **NodeJS**: >= 18.0.0 (recommend >=18.19.0)
> recommend use [fnm](https://github.com/Schniz/fnm) to manage nodejs version. [Installation Tutorial](https://juejin.cn/post/7113462239734022158)
- **pnpm**: >= 8.0.0 (recommend >=8.14.0)
- **git**
## 文档
- [项目文档预览地址](https://admin-docs.soybeanjs.cn/)
## 代码仓库
| 仓库 | GitHub 地址 | gitee 镜像 | 预览 |
| -------------- | ----------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | --------------------------------------------------------- |
| soybean-admin | [GitHub](https://github.com/honghuangdc/soybean-admin) | [gitee](https://gitee.com/honghuangdc/soybean-admin) | [预览](https://admin.soybeanjs.cn/) |
| tauri 版 | [tauri 版](https://github.com/honghuangdc/soybean-admin/tree/tauri) | [tauri 版](https://gitee.com/honghuangdc/soybean-admin/tree/tauri) | |
| 精简版 | [精简版](https://github.com/honghuangdc/soybean-admin/tree/thin) | [精简版](https://gitee.com/honghuangdc/soybean-admin/tree/thin) | |
| 集成 fast-crud | [集成 fast-crud](https://github.com/honghuangdc/soybean-admin/tree/fast-crud) | [集成 fast-crud](https://gitee.com/honghuangdc/soybean-admin/tree/fast-crud) | [预览](http://fast-crud.docmirror.cn/soybean/#/crud/demo) |
## 更新日志
[CHANGELOG](./CHANGELOG.md)
## 后端服务
- [soybean-admin-java](https://github.com/honghuangdc/soybean-admin-java)
## 项目示例图
![](https://s2.loli.net/2022/05/16/keOtgFH27r9nqYS.png)
![](https://s2.loli.net/2022/05/18/bW7mftiQexkvSTG.png)
![](https://s2.loli.net/2022/05/16/uV5nzjb3gYptAEl.png)
![](https://s2.loli.net/2022/05/16/rSnNHLdpuvkKxWq.png)
![](https://s2.loli.net/2023/06/07/O39EKNa675FZIuS.png)
![](https://s2.loli.net/2022/05/18/Mt6YZqmDxO8v4uR.png)
![](https://s2.loli.net/2023/06/07/zhmWnFlPTfDpot8.png)
![](https://s2.loli.net/2022/05/16/VPl6Ru1iCAhLcS4.png)
![](https://s2.loli.net/2023/06/07/n6Dy1HXBvuPc9oT.png)
![](https://s2.loli.net/2022/06/07/rY8TyAftM5dxspv.png)
![](https://s2.loli.net/2022/06/07/5GNBAd31IzQVjLP.png)
![](https://s2.loli.net/2022/06/07/rRSG6mEZpujOACT.png)
<div align="center">
<img style="width:380px;margin-right:18px;border:1px solid #dedede;" src="https://s2.loli.net/2023/06/07/A5Nonc9vI6pB1lr.png" />
&nbsp;
<img style="width:380px;border:1px solid #dedede;" src="https://s2.loli.net/2023/06/07/VwBjqEhTke3OxXF.png" />
</div>
## 安装使用
- 环境配置
**本地环境需要安装 pnpm 7.x 、Node.js 14.18+ 和 Git**
- 克隆代码
- Clone Project
```bash
git clone https://github.com/honghuangdc/soybean-admin.git
```
- 安装依赖
- Install Dependencies
```bash
pnpm i
```
> The project uses pnpm monorepo, so you can't use npm or yarn to install dependencies.
- 运行
- Start Project
```bash
pnpm dev
```
- 打包
- Build Project
```bash
pnpm build
```
## Docker 部署
## How to Contribute
- Docker 部署 Soybean
We welcome all contributions. You can submit any ideas as [pull requests](https://github.com/honghuangdc/soybean-admin/pulls) or as a GitHub [issue](https://github.com/honghuangdc/soybean-admin/issues/new).
```bash
docker build -t soybean-admin-image -f docker/Dockerfile .
docker run -d -p 80:80 soybean-admin-image
```
## Git Commit Guidelines
- 访问 SoybeanAdmin
The project has built-in command `commit`, so by executing `pnpm commit` you can create a commit message following [Conventional Commits](conventionalcommits)
打开本地浏览器访问`http://localhost`
## Browser Support
## 如何贡献
It is recommended to use the latest version of Chrome in development for a better experience.
非常欢迎您的加入![提一个 Issue](https://github.com/honghuangdc/soybean-admin/issues/new) 或者提交一个 Pull Request。
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/archive/internet-explorer_9-11/internet-explorer_9-11_48x48.png" alt="IE" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/) | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt=" Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/) | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/) | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/) | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/) |
| --- | --- | --- | --- | --- |
| not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
## Git 贡献提交规范
## OpenSource Author
项目已经内置 Angular 提交规范,直接执行 commit 命令即可生成符合 Angular 提交规范的 commit。
[Soybean](https://github.com/honghuangdc)
项目已用 simple-git-hooks 代替了 husky, 旧版本用了 husky执行 pnpm soy init-simple-git-hooks 进行初始化配置
## Communication
## 浏览器支持
- [GitHub Issue](https://github.com/honghuangdc/soybean-admin/issues)
<br />
本地开发推荐使用`Chrome 90+` 浏览器
- QQ Group :
支持现代浏览器, 不支持 IE
<img src="https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/qq.jpeg" style="width:200px" />
<br />
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/archive/internet-explorer_9-11/internet-explorer_9-11_48x48.png" alt="IE" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)IE | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt=" Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)Safari |
| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
- Soybean's Wechat (Business Consultancy or Cooperation) :
## 开源作者
<img src="https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/wechat.jpeg" style="width:200px" />
[@Soybean](https://github.com/honghuangdc)
## Donation
## 交流
If you think this project is helpful to you, you can buy Soybean a drink to show your support, Soybean open source power can not be separated from your support and encouragement.
`Soybean Admin` 是完全开源免费的项目,在帮助开发者更方便地进行中大型管理系统开发,同时也提供微信和 QQ 交流群,使用问题欢迎在群内提问。
<div style="display:flex;">
<div style="padding-right:24px;">
<p>QQ交流群</p>
<img src="https://i.loli.net/2021/11/24/1J6REWXiHomU2kM.jpg" style="width:200px" />
</div>
<div>
<p>添加本人微信,欢迎来技术交流,业务咨询</p>
<img src="https://s2.loli.net/2023/06/07/sVyCUFBvzQ9f5b7.jpg" style="width:200px" />
</div>
</div>
## 捐赠
如果你觉得这个项目对你有帮助,可以请 Soybean 喝杯饮料表示支持Soybean 开源的动力离不开各位的支持和鼓励。
![赞助](https://s2.loli.net/2022/01/24/i9cpq7lTCrKUoFf.png)
![](https://soybeanjs-1300612522.cos.ap-guangzhou.myqcloud.com/uPic/donation.png)
## License
本项目基于[MIT © Soybean-2021](./LICENSE) 协议,仅供参考学习,商用时请保留作者的版权信息,作者不对软件做担保和负责。
This project is based on the [MIT © 2021 Soybean](./LICENSE) protocol, for learning purposes only, please retain the author's copyright information for commercial use, the author does not guarantee and is not responsible for the software.