AI prompts
base on SmartAdmin国内首个以「高质量代码」为核心,「简洁、高效、安全」快速开发平台;基于SpringBoot2/3 + Sa-Token + Mybatis-Plus 和 Vue3 + Vite5 + Ant Design Vue 4.x (同时支持JavaScript和TypeScript双版本);满足国家三级等保要求、支持登录限制、接口数据国产加解密、高防SQL注入等一系列安全体系。 ### **SmartAdmin**
**SmartAdmin** 由 **中国·洛阳** [1024创新实验室](https://www.1024lab.net/) 基于SpringBoot2/3+Sa-Token+Mybatis-Plus 和 Vue3+Ant Design Vue+Uni-App+Uni-UI,并以 <font color="#DC143C">**「高质量代码」为核心,「简洁、高效、安全」**</font>的快速开发平台。
**<font color="#DC143C">国内首个满足《网络安全-三级等保》、《数据安全》</font>** 功能要求,支持登录限制、接口国产加解密、数据脱敏等一系列安全要求。
前端提供 **<font color="#DC143C">JavaScript和TypeScript双版本</font>**,后端提供 **<font color="#DC143C">Java8+SpringBoot2.X和Java17+SpringBoot3.X 双版本</font>**。
同时 **<font color="#DC143C">重磅开源</font>** 开源六年来 **<font color="#DC143C">千余家企业验证过且正在使用</font>** 的代码规范: **<font color="#DC143C">《高质量代码思想》、《Vue3规范》、《Java规范》</font>** ,让大家在这浮躁的世界里感受到一股把代码写好的清流!同时又能节省大量时间,减少加班,快乐工作,保持谦逊,保持学习,**<font color="#DC143C">热爱代码,更热爱生活</font>** !
### **技术体系**
- 前端:JavaScript/TypeScript + Vue3 + Vite5 + Pinia + Ant Design Vue 4.X
- 移动端:uniapp (vue3版本) + uni-ui + (同时支持APP、小程序、H5)
- 后端:Java8/17 + SpringBoot2/3 + Sa Token + Mybatis-plus + 多种数据库
- 官方文档:[https://smartadmin.vip](https://smartadmin.vip)
- 电脑在线预览:[https://preview.smartadmin.vip](https://preview.smartadmin.vip)
- 移动端在线预览:[https://app.smartadmin.vip](https://app.smartadmin.vip/#/pages/login/login)
### **理念与思想**
- 我们分享的不是徒劳无功的各种功能,而是必须有的功能,如:数据变动记录、系统说明文档、版本更新记录、意见反馈、日志、心跳、单号生成器等等。
- 我们分享的还有经过上百家公司验证过的前端、后端、vue3等代码规范,好的规范能让我敲下的每行代码更铿锵有力!
- **我们推崇高质量的代码,身为开发,代码即利剑,键盘上一套行云流水,宛如侠客,事了拂衣去,深藏身与名。**
- **我们推崇团队的高度配合默契、互相帮助,从不加班,而不是一看到别人的代码就头皮发麻,留其 [996.ICU](https://baike.baidu.com/item/996.ICU) 加班。**
- **我们主动思考,保持谦逊,保持学习,热爱代码,更热爱生活。**
- **<font color="#DC143C">我们希望你,希望你能花费3分钟认真阅读下面的每一个点,让你感受从未有过的技术体验!</font>**
### **功能亮点图**
<table>
<tr>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/login/login-bg.png"/></td>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/cut/home.png"/></td>
</tr>
<tr>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/login/login-fail-log.png"/></td>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/cut/doc.png"/></td>
</tr>
<tr>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/cut/code.png"/></td>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/cut/git-diff.png"/></td>
</tr>
<tr>
<td><img src="https://img.smartadmin.1024lab.net/smart-app/app1.png"/></td>
<td><img src="https://img.smartadmin.1024lab.net/smart-app/app2.png"/></td>
</tr>
<tr>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/cut/front.png"/></td>
<td><img src="https://img.smartadmin.1024lab.net/smart-admin-v3/cut/back.png"/></td>
</tr>
</table>
### **功能亮点**
- **<font color="#DC143C">安全体系</font>**:满足国家三级等保要求,如双因子登录、密码加密、密码复杂度要求、登录错误次数锁定、登录超时退出、数据脱敏等网络安全和数据安全功能
- **<font color="#DC143C">接口加解密</font>**:支持请求参数和返回内容进行加解密操作,支持国产加密算法和其他国外加密算法
- **表格自定义列**:支持用户自定义列,并能将用户自定义列持久化到数据库
- **数据变更记录**:支持基于git diff插件的数据变更记录,查看数据变化更直观方便
- **在线文档**:支持右侧帮助文档(类似阿里云控制台右侧帮助文档效果)、支持意见反馈、版本记录 等功能
- **OA办公**:公司信息(发票、银行、员工等)、通知公告(阅读记录、次数等)
- **日志、监控**:服务器心跳日志、登录日志、操作日志(IP、浏览器、操作系统等设备信息)
- **系统功能**:员工、部门、角色、权限、菜单、水印、文件管理、系统参数、数据字典、单号生成 等
- **代码生成**: 基于每个表的配置、在线预览代码、下载 等
- **以上只是一些举例,更多灿若繁星的惊喜和细节,等待着你的发现!**:[SmartAdmin 业内独有功能亮点](https://smartadmin.vip)
### **代码亮点**
- **【前端-双版本】:** 提供 js 和 ts 双版本,目录结构及其清晰
- **【前端-常量维护】:** vue-enum,拒绝出现魔法数字,常量枚举不可维护的现象
- **【前端-命名】:** 业内最好的api、常量等命名和写法
- **【前端-多环境支持】:** 独有的本地、开发、测试、预发布、生产 5个env环境配置文件
- **【前端-layout代码】:** 业内代码最清晰的layout布局写法,小白都能看懂
- **【前端-main.js】:** 业内可能只有我们把main.js中的router加载方式写对了
- ----华丽前后端分割线----
- **【后端-独有目录结构】:** 业内独有的高质量的 Java代码分包结构,适合大、中、小型项目,结构非常清晰
- **【后端-公共配置文件】:** 业内独有的共用配置文件维护,简化共同配置
- **【后端-返回码维护】:** 业内独创的请求返回码维护,非常值得一看
- **【后端-四层架构】:** 四层架构(controller, service, manager, dao),为什么要有四层
- **【后端-多环境】:** maven多环境:开发、测试、预发布、生产 环境配置
- **【后端-系统钩子】:** smart-reload,为系统预留钩子,动态加载,在不重启程序前提下执行一些代码
- 以上只是沧海一粟,更多的细节等待你的发现
", Assign "at most 3 tags" to the expected json: {"id":"13446","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"