Hello, 大家好,我是程序员海军, 全栈开发 |AI爱好者 | 独立开发

040cfdd70f5faac6da987c0b00fdffcd

之前我是采用Node生态开发的大模型以及MCP Server,大模型开发的生态主要是Python语言,为了更好的学习大模型开发,于是开了新坑。开始学习Python, 以及 fastapiLangChain(py)。 这些python+fastapi基础了解了1-2天,有了大概的基础认知。于是我开始指挥AI 帮我干活了,2-3个小时后端干完了,其实还可以更快一点,主要可能前期不熟练python,前端干了5分钟。下面具体聊聊这个项目,做这个项目主要也是快速对python建立个认知。

由于大概我知道怎么实现,那么主要就是写提示词让AI 干活了,提示词以及模型的好坏决定生成的质量如何,下面看看成果如何

Python 部分

image

用FastApi+mysql 搭建了一个 通用的后台项目,它提供了完整的用户管理、权限控制、认证授权等功能,适合作为中小型项目的用户系统基础架构。
作为自己的后台架子使用 或者 接私活使用都是很不错的选择,下面来聊聊实现了哪些

数据库设计

image

完整的接口文档

image

实现功能

实现了认证授权
  • 登录方式 - 用户名密码、微信扫码登录
  • T 双令牌 - Access Token + Refresh Token 机制
  • 安全 - bcrypt 加密,支持密码重置
  • 验证 - 注册验证码、找回密码验证码
用户管理
  • CRUD - 完整的用户增删改查功能
  • 资料 - 头像上传、资料编辑、账号绑定
  • 状态 - 启用/禁用、在线状态管理
权限控制
  • 资源权限 - 基于资源+动作的权限模型
  • 角色管理 - 灵活的角色权限分配
  • 权限装饰器 - @require_permission 简化权限控制
  • 动态鉴权 - 运行时权限检查
文件管理

-文件上传 - 支持多种文件类型,大小限制

  • 访问控制 - 公开/私有文件权限管理
  • 批量操作 - 文件批量上传、删除
📧 邮件服务
  • QQ邮箱支持 - 完整的QQ邮箱SMTP配置
  • 邮件模板 - 精美的HTML邮件模板
  • 多种邮件 - 验证码、通知、欢迎邮件等

🛠️ 技术栈

cc309957fab5b51d4deba202aee17e54

后端框架

  • FastAPI 0.104.1 - 现代化的 Python Web 框架
  • Uvicorn 0.24.0 - ASGI 服务器
  • Pydantic 2.5.0 - 数据验证和序列化

数据库

  • SQLAlchemy 2.0.23 - Python ORM 框架
  • MySQL 8.0+ - 关系型数据库
  • PyMySQL 1.1.0 - MySQL 驱动
  • Alembic 1.13.1 - 数据库迁移工具

安全认证

  • python-jose 3.3.0 - JWT 处理
  • passlib 1.7.4 - 密码加密
  • cryptography 41.0.7 - 加密算法

其他工具

  • aiofiles 23.2.1 - 异步文件操作
  • httpx 0.25.2 - HTTP 客户端
  • email-validator 2.1.0 - 邮箱验证

前端部分

image
image
image
image

✨ 特性

项目UI 基于 shadcn/ui 组件库 实现

  • 📱 响应式布局 - 完美适配桌面端和移动端
  • 🔐 完整认证系统 - 登录、注册、忘记密码、JWT 认证
  • 👥 用户管理 - 用户增删改查、状态管理、个人资料
  • 🛡️ 角色权限 - 灵活的角色权限管理系统
  • 📊 数据可视化 - 基于 Recharts 的图表展示
  • 📝 日志管理 - 完整的操作日志记录和查询
  • 🔧 TypeScript - 完整的类型定义,开发体验更佳

🛠️ 技术栈

前端框架

  • Next.js 14 - React 全栈框架
  • TypeScript - 类型安全的 JavaScript
  • Tailwind CSS - 原子化 CSS 框架

UI 组件

  • shadcn/ui - 高质量的 React 组件库
  • Radix UI - 无样式的可访问组件
  • Lucide React - 美观的图标库
  • Recharts - 数据可视化图表库

状态管理

  • React Hooks - 内置状态管理
  • Axios - HTTP 客户端
  • js-cookie - Cookie 管理

开发工具

  • ESLint - 代码质量检查
  • Prettier - 代码格式化
  • Husky - Git 钩子管理

🎨 主题定制

系统使用 Tailwind CSS 和 CSS 变量实现主题定制:
image
image

最后

简直太强了,原本1个月的工作量,AI 3个小时给干了…

通过这个项目可快速的对FastApi以及python有了清晰的认知,接下来就是开始上LangChain(py)以及结合公司业务项目进行开发了,好了下期我们再见。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/91362.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/91362.shtml
英文地址,请注明出处:http://en.pswp.cn/web/91362.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浏览器pdf、image显示

浏览器地址栏 pdf data:application/pdf;base64, data:application/pdf;base64,JVBERi0xLjcKJeLjz9MKMjMgMCBvYmoKPDwv image data:image/jpeg;base64, data:image/jpeg;base64,/9j/4Q3fRXhpZgAATU0AKgAAAAgABwE

《Linux运维总结:银河麒麟V10 SP3启动docker容器报错permission denied》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:Linux运维实战总结 一、环境信息 二、背景 1、使用docker启动一个nginx容器,报错信息如下: docker: Error response from…

PDF源码解析

PDF源码解析打开PDF解析PDF​0. 文件头关键信息解析技术原理图解文件头的重要性实际文件结构示例开发者注意事项历史背景1. 根目录整体结构关键字段解析核心概念解释实际应用场景完整对象关系图技术总结2. 页面树对象结构关键字段解析页面树工作原理技术要点总结实际应用3. 图像…

java开闭原则 open-closed principle

基本知识 1.核心思想:面向抽象编程 2.基本内涵:对修改关闭,对扩展开放 3.要求:尽可能不修改源码而是增加新功能 例子 以spring5核心原理与30个类手写实战中的为例 package com.gupaoedu.vip.design.principle.openclose;/*** Crea…

拥抱智慧物流时代:数字孪生技术的应用与前景

概述 在数字经济全面推进的当下,物流行业正经历着前所未有的智能化升级。作为新一代信息技术的重要代表,数字孪生技术正悄然改变着物流的运作方式和决策模式。所谓数字孪生,是指在虚拟空间中创建与现实物流系统高度一致的数字模型&#xff0…

libnest2d-头文件分析-libnest2d.hpp-几何类型-策略类型-参数配置

libnest2d 库的主头文件,定义了一个用于 二维不规则形状自动排样(Nesting) 的C接口。以下是详细解析:1. 头文件结构 (1) 防止重复包含 #ifndef LIBNEST2D_HPP #define LIBNEST2D_HPP // ... #endif // LIBNEST2D_HPP确保头文件只被…

【Docker】部署Docker可视化管理面板Dpanel

一、DPanel 介绍 1.1 DPanel 简介 DPanel 是一款专为 Docker 设计的可视化管理面板,旨在降低容器、镜像及相关资源的管理门槛。通过简洁直观的图形化界面,即使是对 Docker 不熟悉的用户,也能轻松上手,实现容器化应用的高效部署与管…

GCC/G++ + Makefile/make 使用

一、gcc\g编译器 什么是gcc和g,它们的区别又是什么? gcc编译器是专门用来编译C语言的,而g编译器既可以编译C语言又可以用来编译C,但是主要还是用来编译C。 我们都知道代码形成可执行程序都是需要经过预处理、编译、汇编和链接这四…

重复文件查找工具:DataSecurity Plus 全面提升企业文件管理效率

企业日常运营经常会出现这样的场景:员工在文件传输、共享与备份过程中,因操作不当或系统设置问题,出现文件重复存储;跨部门协作时,相同的项目资料可能被多次保存;随着数据迁移与系统升级,重复文…

【软件架构】资源池架构设计中的三种主流模式

在资源池架构设计中,三种主流模式——集中式、分布式和混合式资源池——各有其独特的优势、劣势和适用场景。理解它们的区别对于设计高效、可靠和可扩展的系统至关重要。 下面是对这三种模式的详细分析和比较:集中式资源池 核心概念: 将所有计…

Java 类加载冲突

在某次线上部署过程中,我们遇到了一个十分诡异的问题:同样的应用,在 ext3 文件系统下运行正常,但部署到 ext4 文件系统下却出现了如下异常:The methods class, com.ctc.wstx.io.StreamBootstrapper, is available from…

VMware安装 统信UOS桌面专业版

前言 近年来,随着Linux发行版在开发者、企业环境中的应用逐渐增多,国产操作系统统信UOS(基于Debian)因其良好的图形化界面和本地化支持,成为不少用户体验Linux生态的选择之一。本文将以VMware Workstation Pro 17为例…

SAP Datasphere 02 - 建模

创建连接创建到 HANA Cloud 实例的连接查看 HANA Cloud实例连接 Endpoint创建连接选择连接类型配置连接信息,授权方式,用户名密码等配置连接名称验证连接导入数据源表创建目录 Hotel ,放置建模对象点击新建目录,导入远程表选择数据…

isasssim robotiq夹爪踩坑

1. usd导出urdf失败在isasssim的仿真中的 robotiq 2f夹爪,首先目前4.5asset里面的usd不能直接转urdf,因为模型中存在 “闭环连接”,即某个部件(或关节)同时与两个及以上的父部件相连,形成类似 “三角形” 的…

50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | Pokedex(宝可梦图鉴)

📅 我们继续 50 个小项目挑战!—— Pokedex组件 仓库地址:https://github.com/SunACong/50-vue-projects 项目预览地址:https://50-vue-projects.vercel.app/ 使用 Vue 3 结合 PokeAPI 来创建一个炫酷的宝可梦图鉴应用。通过这个…

【Practical Business English Oral Scene Interpretation】在职主持会议-安排任务+结束会议

文章目录Introduction1. 讨论代办事项2. 分配工作任务3. 说明截止日期4. 说明截止日期5. 感谢参会者Introduction Note that each row of the table represents the content of the conversation in order. 1. 讨论代办事项 AlexBarryNoteLet’s review the to-dos from the…

ansible简单playbook剧本例子

1. 创建主机清单vim inventory.ini192.168.100.181[web:vars] ansible_userroot ansible_passwordAdmin123456[web] 192.168.100.1822. 创建一个简单的剧本vim playbook.yaml- name: My first playhosts: webtasks:- name: Ping my hostsansible.builtin.ping:- name: Print me…

爱心烟花浪漫立方体轮播图 - 用代码表达爱意

项目介绍 这是一个专为表白和营造浪漫氛围而设计的3D立方体轮播图结合了现代Web技术与浪漫元素,通过立方体的旋转展示珍贵的照片,同时配有爱心飘动、流星划过、烟花绽放和雪花飞舞等浪漫特效,为你的表白增添独特的科技浪漫。 效果展示截图原…

基于人工智能的无人机网络系统

目录 1.环境感知与目标检测 2.无人机定位与导航(SLAM与路径规划) 3.无人机网络通信与资源优化 4.无人机集群协同控制(一致性与编队) 5.无人机任务分配与调度(组合优化) 6.MATLAB仿真测试 基于人工智能…

nginx安装配置Lua模块的支持

一、先来看几个概念问题1.1 为什么需要?nginx官方自带了非常多的核心模块,再加上第三方的模块能够满足我们大部分的业务需要,但是业务的需求、业务的场景变化需要添加一些额外的功能,如果自己去开发一个nginx模块相对来说比较笨重…