编写项目基本架构
广告
{{v.name}}
📋 原始需求(task.md):
本项目是一个海报项目,该项目旨在用用户上传的图片和文字生成海报,并提供多种模板和多种字体供用户选择。以下是该项目的基本架构和实现步骤: 1. **项目概述** - **目的**:为用户提供个性化海报制作服务,包括图片上传与管理、文字编辑、模板选择等功能。 2. **技术栈** - **后端**:使用Python语言,配合FastAPI框架。所有的api均写到api.py文件中,端口用8030。 - **数据库**:使用MySQL,通过SQLAlchemy ORM进行数据操作。数据库的连接字符串是localhost:3306,用户名是root,密码为123456。使用cnoctave_poster数据库,如果数据库不存在则创建。 - **前端**:使用vue3 cdn版本。前端使用axios进行数据请求,网址用http://localhost:8030。index.html是主页,主页显示历史海报图片,点击图片可以打开编辑器。主页还要设置“新建”按钮,用于新建空白海报。edit.html是编辑器,编辑器的左侧边栏是字体下拉菜单、海报模板列表和用户上传的图片,右侧是编辑区域。编辑区域实时预览海报效果。编辑器支持撤销、重做、保存和导出按钮。导出按钮的用途是将当前编辑区域的内容用js库保存为图片并下载。picture_admin.html是图片管理页面,用于上传图片和删除图片。后端还要支持记录图片的上传日期,支持存储图片的路径。后端要给前端用树形结构返回图片列表,前端支持用树形结构显示目录树,前端支持用“文件夹”的方式单击展开或收起目录树的节点。 必须实现的模块: - 编写api.py文件 - 创建数据库 - 编写前端页面
本项目是一个海报项目,该项目旨在用用户上传的图片和文字生成海报,并提供多种模板和多种字体供用户选择。以下是该项目的基本架构和实现步骤: 1. **项目概述** - **目的**:为用户提供个性化海报制作服务,包括图片上传与管理、文字编辑、模板选择等功能。 2. **技术栈** - **后端**:使用Python语言,配合FastAPI框架。所有的api均写到api.py文件中,端口用8030。 - **数据库**:使用MySQL,通过SQLAlchemy ORM进行数据操作。数据库的连接字符串是localhost:3306,用户名是root,密码为123456。使用cnoctave_poster数据库,如果数据库不存在则创建。 - **前端**:使用vue3 cdn版本。前端使用axios进行数据请求,网址用http://localhost:8030。index.html是主页,主页显示历史海报图片,点击图片可以打开编辑器。主页还要设置“新建”按钮,用于新建空白海报。edit.html是编辑器,编辑器的左侧边栏是字体下拉菜单、海报模板列表和用户上传的图片,右侧是编辑区域。编辑区域实时预览海报效果。编辑器支持撤销、重做、保存和导出按钮。导出按钮的用途是将当前编辑区域的内容用js库保存为图片并下载。picture_admin.html是图片管理页面,用于上传图片和删除图片。后端还要支持记录图片的上传日期,支持存储图片的路径。后端要给前端用树形结构返回图片列表,前端支持用树形结构显示目录树,前端支持用“文件夹”的方式单击展开或收起目录树的节点。 必须实现的模块: - 编写api.py文件 - 创建数据库 - 编写前端页面
本项目是一个海报项目,旨在用用户上传的图片和文字生成海报,并提供多种模板和多种字体供用户选择。
技术栈
- 后端:Python + FastAPI,接口写在 api.py,端口 8030
- 数据库:MySQL (localhost:3306),SQLAlchemy ORM,数据库 cnoctave_poster(不存在则创建)
- 前端:Vue 3 CDN + axios(http://localhost:8030)。index.html 主页(历史海报+新建);edit.html 编辑器(字体/模板/图片/撤销重做/保存导出);picture_admin.html 图片管理(上传删除、目录树)
必须实现的模块
- 编写 api.py(FastAPI 后端 + 数据库初始化 + 海报/图片/字体/模板接口)
- 创建数据库 cnoctave_poster
- 编写 index.html / edit.html / picture_admin.html 前端页面