logo
0
0
Login
feat: React+Flask+SQLite待办事项应用完整项目 - 添加前后端代码和Docker部署配置

待办事项应用 (Todo List)

一个功能完整的待办事项管理应用,使用现代化技术栈构建。

🛠️ 技术栈

后端

  • Flask - Python Web 框架
  • SQLite - 轻量级数据库
  • Flask-CORS - 跨域支持

前端

  • React - UI 框架
  • Vite - 构建工具
  • Axios - HTTP 客户端
  • CSS3 - 样式设计

📁 项目结构

todo_list/ ├── backend/ # Flask 后端 │ ├── app.py # 主应用文件 │ ├── models.py # 数据库模型 │ ├── requirements.txt # Python 依赖 │ └── todos.db # SQLite 数据库(自动生成) ├── frontend/ # React 前端 │ ├── public/ │ ├── src/ │ │ ├── App.jsx # 主组件 │ │ ├── App.css # 样式 │ │ ├── main.jsx # 入口文件 │ │ └── index.css # 全局样式 │ ├── index.html │ ├── package.json │ └── vite.config.js └── README.md # 本文件

🚀 快速开始

1. 启动后端服务

cd backend pip install -r requirements.txt python app.py

后端服务将运行在 http://localhost:5000

2. 启动前端服务

cd frontend npm install npm run dev

前端服务将运行在 http://localhost:5173

✨ 功能特性

  • ✅ 添加待办事项
  • ✅ 标记完成/未完成
  • ✅ 删除待办事项
  • ✅ 编辑待办事项
  • ✅ 筛选显示(全部/进行中/已完成)
  • ✅ 数据持久化(SQLite)
  • ✅ 响应式设计
  • ✅ 现代化 UI

📝 API 接口

GET /api/todos

获取所有待办事项

POST /api/todos

创建新的待办事项

{ "title": "待办事项标题" }

PUT /api/todos/:id

更新待办事项

{ "title": "新标题", "completed": true }

DELETE /api/todos/:id

删除待办事项

🎨 界面预览

  • 清爽的现代化界面设计
  • 流畅的交互动画
  • 响应式布局,适配移动端

📦 部署

开发环境

按照上述快速开始步骤即可

生产环境

  1. 前端构建:cd frontend && npm run build
  2. 后端部署:使用 Gunicorn 或 uWSGI
  3. 数据库:SQLite 或迁移到 PostgreSQL/MySQL

🔧 技术说明

  • 前端使用 Vite 作为构建工具,提供快速的开发体验
  • 后端使用 Flask 轻量级框架,易于开发和部署
  • SQLite 数据库无需额外配置,开箱即用
  • 使用 RESTful API 设计,前后端分离

📄 许可证

MIT License