# trae-tutorial **Repository Path**: baihr/trae-tutorial ## Basic Information - **Project Name**: trae-tutorial - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-18 - **Last Updated**: 2026-02-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Todo App 一个功能完整的Flask+SQLite Todo应用,支持用户认证、任务管理、组织分类、搜索过滤和数据管理等功能。 ## 版本信息 - **当前版本**:0.0.1 - **发布日期**:2026-02-18 - **许可证**:MIT ## 功能特性 ### 核心功能 - ✅ **用户认证**:注册、登录、登出 - ✅ **任务管理**:创建、编辑、删除、标记完成/未完成 - ✅ **组织与分类**:任务分类、标签、优先级设置 - ✅ **搜索与过滤**:按状态、优先级、分类、关键词搜索 - ✅ **数据管理**:导入/导出JSON格式数据 ### 安全特性 - ✅ **CSRF保护**:防止跨站请求伪造攻击 - ✅ **XSS预防**:防止跨站脚本攻击 - ✅ **密码加密**:使用pbkdf2_sha256加密存储密码 ### 部署支持 - ✅ **Docker容器化**:提供完整的Dockerfile配置 - ✅ **本地部署**:支持直接在本地运行 ## 技术栈 - **后端**:Python 3.14, Flask 3.1.2 - **数据库**:SQLite - **前端**:HTML5, Bootstrap 4.5.2 - **安全**:Flask-WTF, passlib - **部署**:Docker ## 快速开始 ### 本地部署 1. **克隆仓库** ```bash git clone https://gitee.com/baihr/trae-tutorial.git cd trae-tutorial ``` 2. **创建虚拟环境** ```bash python -m venv venv ``` 3. **激活虚拟环境** - Windows: ```bash venv\Scripts\activate ``` - Linux/Mac: ```bash source venv/bin/activate ``` 4. **安装依赖** ```bash pip install -r requirements.txt ``` 5. **创建.env文件** ```bash echo "SECRET_KEY=dev-secret-key-change-in-production" > .env ``` 6. **启动应用** ```bash python app.py ``` 7. **访问应用** 打开浏览器访问 http://127.0.0.1:5000 ### Docker部署 1. **构建镜像** ```bash docker build -t todo-app . ``` 2. **运行容器** ```bash docker run -d -p 5000:5000 --name todo-container todo-app ``` 3. **访问应用** 打开浏览器访问 http://localhost:5000 ## 项目结构 ``` trae-tutorial/ ├── app.py # 应用主文件 ├── extensions.py # 扩展初始化 ├── models.py # 数据库模型 ├── routes.py # 路由和功能实现 ├── requirements.txt # 项目依赖 ├── .env # 环境变量配置 ├── .gitignore # Git忽略文件 ├── LICENSE # MIT许可证 ├── Dockerfile # Docker配置 ├── README.md # 项目说明 └── templates/ # 模板文件 ├── base.html # 基础模板 ├── index.html # 首页 ├── login.html # 登录页面 ├── register.html # 注册页面 └── edit_task.html # 编辑任务页面 ``` ## 使用说明 1. **注册账号**:访问 /register 页面创建新账号 2. **登录系统**:使用注册的账号登录 3. **创建任务**:在首页填写任务信息并提交 4. **管理任务**:编辑、删除、标记完成任务 5. **组织分类**:创建分类和标签,对任务进行组织 6. **搜索过滤**:使用左侧过滤面板查找特定任务 7. **数据导入导出**:使用数据管理功能备份或恢复数据 ## 安全注意事项 - 本应用使用了Flask-WTF的CSRF保护机制 - 密码使用pbkdf2_sha256算法加密存储 - 在生产环境中,请修改.env文件中的SECRET_KEY - 建议在生产环境中使用HTTPS协议 ## 贡献指南 欢迎提交Issue和Pull Request来帮助改进这个项目! ## 许可证 本项目使用MIT许可证,详见LICENSE文件。