一、简介
Kinit 是一套全部开源的快速开发平台,采用FastAPI + vue3 前后端分离后台管理系统,包含PC端,微信小程序端。PC 端使用:Vue3+Typescript+Vite+Element Plus,小程序使用:Uni-APP + uview ui,接口使用:FastAPI+Pydantic+SQLAlchemy 2.0+Mysql。异步存储,RBAC 权限管理,定时任务,部门管理等功能。
二、特点
-
后端采用现代、快速(高性能) FastAPI 异步框架 + 自动生成交互式API文档 + (强制类型约束)Pydantic + (高效率)SQLAlchemy 2.0;
-
PC端采用 vue-element-plus-admin 、Vue3、Element Plus、TypeScript等主流技术开发;
-
移动端采用 uni-app,Vue2,uView 2为主要技术开发;
-
后端加入 Typer 命令行应用,简单化数据初始化,数据表模型迁移等操作;
-
后端新加入根据配置的 ORM 模型,自动生成 CRUD 代码;
-
定时任务功能,采用 APScheduler 定时任务框架 + Redis 消息队列 + MongoDB 持久存储;
-
权限认证使用(哈希)密码和 JWT Bearer 令牌的 OAuth2,支持多终端认证系统。
-
支持加载动态权限菜单,多方式轻松权限控制,按钮级别权限控制。
-
已加入常见的 MySQL + MongoDB + Redis 数据库异步操作。
-
支持 docker-compose 部署方式
-
开箱即用的中后台解决方案,可以用来作为新项目的启动模版,也可用于学习参考。并且时刻关注着最新技术动向,尽可能的第一时间更新。
-
与 vue-element-plus-admin 前端框架时刻保持同步更新。
三、PC端内置功能
-
菜单管理:配置系统菜单,操作权限,按钮权限标识、后端接口权限等。
-
部门管理:支持无限层级部门配置。
-
角色管理:角色菜单权限,角色部门权限分配。
-
用户管理:用户是系统操作者,该功能主要完成系统用户配置。
-
个人主页:配置用户个人信息,密码修改等。
-
字典管理:对系统中经常使用的一些较为固定的数据进行维护。
-
文件上传:对接阿里云OSS与本地存储。
-
登录认证:目前支持用户使用手机号+密码登录方式,手机验证码登录方式。
说明:新建用户密码默认为手机号后六位;
说明:用户在第一次登录时,必须修改当前用户密码。
-
系统配置:对本系统环境信息进行动态配置
网站标题,LOGO,描述,ICO,备案号,底部内容,微信小程序信息,等等
-
用户分布:接入高德地图显示各地区用户分布情况
-
数据概览:提供两种数据统计展示模板,更直观的查看数据统计情况
-
智慧大屏:大屏展示办公室空气质量实时检测数据分析
-
登录日志:用户登录日志记录和查询。
-
操作日志:系统用户每次操作功能时的详细记录。
-
接口文档:提供自动生成的交互式 API 文档,与 ReDoc 文档
-
导入导出:灵活支持数据导入导出功能
-
已加入常见的Redis、MySQL、MongoDB数据库异步操作。
-
命令行操作:新加入 Typer 命令行应用,简单化数据初始化,数据表模型迁移。
-
定时任务:在线操作(添加、修改、删除)任务调度包含查看任务执行结果日志
四、移动端内置功能
-
登录认证:支持用户使用手机号+密码方式登录,微信手机号一键登录方式。
说明:新建用户密码默认为手机号后六位;
说明:用户在第一次登录时,必须修改当前用户密码。
-
导航栏:首页、我的、工作台
-
我的基础功能:编辑资料、头像修改、密码修改、常见问题、关于我们等
五、框架技术
5.1 后端技术
-
Python3:熟悉 python3 基础语法
-
FastAPI - 熟悉后台接口 Web 框架
-
SQLAlchemy 2.0 - 数据数据库操作
-
Typer - 熟悉命令行工具的使用
-
MySQL 和 MongoDB 和 Redis - 熟悉数据存储数据库
-
iP查询接口文档:IP查询第三方服务,有1000次的免费次数
5.2 PC端
-
node 和 git - 项目开发环境
-
Vite - 熟悉 vite 特性
-
Vue3 - 熟悉 Vue 基础语法
-
TypeScript - 熟悉 TypeScript 基本语法
-
Es6+ - 熟悉 es6 基本语法
-
Vue-Router-Next - 熟悉 vue-router 基本使用
-
Element-Plus - element-plus 基本使用
-
vue3-json-viewer:简单易用的json内容展示组件,适配vue3和vite。
-
高德地图API (amap.com):地图 JSAPI 2.0 是高德开放平台免费提供的第四代 Web 地图渲染引擎。
5.3 移动端
-
uni-app - 熟悉 uni-app 基本语法
-
Vue2 - 熟悉 Vue 基础语法
-
uView UI 2:uView UI 组件的基本使用
-
uni-read-pages :自动读取 pages.json 所有配置。
-
uni-simple-router :在uni-app中使用vue-router的方式进行跳转路由,路由拦截。
5.4 定时任务
-
Python3 -熟悉 python3 基础语法
-
APScheduler - 熟悉定时任务框架
-
MongoDB 和 Redis - 熟悉数据存储数据库
六、系统截图
6.1 PC端演示图
6.3 微信小程序端演示图
七、源码地址