当前位置: 首页 > news >正文

写个 flask todo app,简洁,实用

- 此项目虽然看起来简单,实际上,修改成自己喜欢的样子,也是费时间的。
- 别人都搞AI 相关的项目,而我还是搞这种基础的东西。不要灰心。
- 积累。不论项目大小,不论难易,只看是否有用。

项目地址: https://github.com/buxuele/flask_todo_app

请添加图片描述

项目概述

这是一个基于 Flask 框架开发的现代化 Todo 应用,专为个人任务管理而设计。应用采用简洁的界面设计和直观的操作方式,帮助用户高效管理日常任务。

核心功能

📅 按日期管理任务

  • 日期导航:左侧边栏显示过去 7 天的日期,方便快速切换查看不同日期的任务
  • 智能显示:自动识别"今天"、“昨天”、"明天"等相对日期
  • 历史记录:保留历史任务记录,便于回顾和跟踪

✅ 完整的任务操作

  • 添加任务:快速添加新任务到当前选中日期
  • 完成标记:双击任务内容即可标记完成/未完成状态
  • 在线编辑:双击任务可直接编辑内容,支持实时保存
  • 删除任务:一键删除不需要的任务
  • 时间记录:自动记录任务创建时间和完成时间

📄 导出功能

  • Markdown 导出:将指定日期的任务导出为格式化的 Markdown 文件
  • 分类整理:导出文件自动将任务分为"待完成"和"已完成"两个部分
  • 统计信息:包含任务总数和完成情况统计

🎨 用户体验

  • 响应式设计:支持桌面和移动设备访问
  • 可折叠侧边栏:节省屏幕空间,专注任务管理
  • 美观界面:采用暖色调设计,使用自定义字体,提供舒适的视觉体验
  • 快捷操作:支持键盘快捷键,提高操作效率

技术架构

后端技术栈

  • Flask:轻量级 Web 框架,提供 RESTful API
  • SQLAlchemy:数据库 ORM,管理任务数据
  • SQLite:轻量级数据库,存储在 instance/todos.db

前端技术栈

  • 原生 JavaScript:无框架依赖,纯净高效
  • Bootstrap 5:响应式 UI 组件库
  • 自定义 CSS:个性化界面设计

项目结构

flask_todo_app/
├── app.py              # Flask 应用主文件
├── routes.py           # API 路由定义
├── models.py           # 数据模型
├── config.py           # 配置文件
├── templates/          # HTML 模板
│   └── index.html      # 主页面
├── static/             # 静态资源
├── instance/           # 数据库文件
├── docs/               # 导出的 Markdown 文件
└── requirements.txt    # 依赖包列表

快速开始

环境要求

  • Python 3.7+
  • pip 包管理器

安装步骤

  1. 克隆项目

    git clone [项目地址]
    cd flask_todo_app
    
  2. 安装依赖

    pip install -r requirements.txt
    
  3. 初始化数据库

    python init_db.py
    
  4. 启动应用

    python app.py
    

    或者直接运行批处理文件:

    run_flask_todo.bat
    
  5. 访问应用
    打开浏览器访问 http://localhost:5990

API 接口

应用提供完整的 RESTful API,支持:

  • GET /api/todos - 获取任务列表
  • POST /api/todos - 创建新任务
  • PUT /api/todos/<id> - 更新任务
  • DELETE /api/todos/<id> - 删除任务
  • GET /api/todos/export/<date> - 导出指定日期任务

使用场景

个人任务管理

  • 日常工作任务规划
  • 学习计划制定
  • 生活事务提醒

团队协作

  • 项目进度跟踪
  • 会议任务分配
  • 工作汇报整理

习惯养成

  • 每日目标设定
  • 习惯打卡记录
  • 进度可视化

特色亮点

  1. 轻量级部署:无需复杂配置,开箱即用
  2. 数据持久化:本地 SQLite 数据库,数据安全可靠
  3. 导出功能:支持 Markdown 格式导出,便于分享和存档
  4. 时间追踪:自动记录任务时间线,便于效率分析
  5. 界面友好:简洁美观的设计,专注用户体验

扩展可能

  • 支持任务分类和标签
  • 添加任务优先级设置
  • 集成日历视图
  • 支持团队协作功能
  • 移动端 App 开发
  • 云端数据同步

总结

这个 Flask Todo 应用虽然功能简洁,但涵盖了任务管理的核心需求。它不仅是一个实用的工具,也是学习 Flask 全栈开发的优秀示例。无论是个人使用还是作为学习项目,都具有很好的实用价值。

项目代码结构清晰,易于理解和扩展,是 Web 开发初学者和有经验开发者的理想选择。

http://www.dtcms.com/a/292319.html

相关文章:

  • calibrate_hand_eye (CalibDataID, Errors)
  • 2025年远程桌面软件深度评测:ToDesk、向日葵、TeamViewer全方位对比分析
  • C++学习——内联、C++11中的auto、for循环、nullptr
  • Windows Cmake Vs2017/2010 编译安装Protobuf
  • 【计算机网络】第五章:传输层
  • 双向链表详解及实现
  • 解锁高品质音频体验:探索音频质量评估与测试的科学之道
  • Vibe Coding:人工智能 + 语音 = 新型开发者工作流
  • Thingsboard是什么?跟LoRaWAN 是什么关系?
  • 图像基础:从像素到 OpenCV 的入门指南
  • 【加解密与C】Rot系列(四)RotSpecial
  • 【windows修复】解决windows10,没有【相机] 功能问题
  • 2025易支付插件/度小满/拉卡拉缴费易/嘉联/海科码钱/富友 支付量身定制的易支付插件优化方案
  • Jupyter Notebook |使用清华源下载安装
  • Final_基于时序数据的回归预测
  • ABP VNext + FluentMigrator:数据库迁移管理
  • AI智能体“上下文工程”实践:来自 Manus 项目的经验总结
  • 【ArcGIS Pro】设置临时存储文件夹(计算缓存数据存放位置)
  • RedisJSON 指令精讲JSON.STRLEN 高效统计字符串长度
  • OpenMVG OpenMVS 安装全流程常见问题与解决方法总结
  • almalinux9.6系统-基础环境准备
  • 【大气反演模型CIF第二期】通过 Docker 容器快速部署和运行 CIF 系统
  • 基于eBPF的Kubernetes网络故障自愈系统设计与实现
  • 33、基于JDK17的GC调优策略
  • Hyper-V虚拟化平台GPU分区和GPU半虚拟化技术比较及应用建议
  • Linux文件系统深入理解
  • repmgr+vip实现对业务透明的高可用切换
  • 数据库—修改某字段默认值
  • Oracle RAC+ADG switchover 切换演练流程
  • TDSQL