Skip to content

hqhq1025/chuyan

Repository files navigation

日程管理网页应用 v6.0.0

这个网页应用允许用户通过简单的聊天界面和可视化日历来管理他们的日程安排。它集成了AI助手功能,能够智能解析用户的自然语言输入,并支持导入课程表。

功能特点

  • 交互式日历,支持日、周、月视图
  • 两栏布局:日历显示和聊天输入
  • AI驱动的自然语言处理,支持多种格式的日程输入
  • 智能解析输入的日期、时间、时长、重复频率和备注信息
  • 支持相对日期输入(如"今天"、"明天"、"下周一")和绝对日期输入
  • 在日历和聊天界面中显示添加的任务
  • 通过点击日历中的任务可以查看详细信息,包括备注和原始输入
  • 自定义模态弹窗用于任务确认、详情展示和用户输入
  • 时间冲突检测功能
  • 预设输入样式模板,方便用户快速输入
  • 支持重复事件(每天、每周、每月、每年)
  • 课程表导入功能,支持解析XLS/XLSX格式的课程表
  • 支持复杂的课程周次安排,如单双周、多段连续周
  • 优化的用户界面,提供更好的视觉体验
  • 新增设置页面,允许用户自定义应用行为

最近更新 (v6.0.0)

  • 成功分离前端和后端,提高了系统的可维护性和扩展性
  • 前端部署到 Vercel,实现了快速、可靠的静态资源服务
  • 后端部署到 Render,提供了稳定的 API 服务
  • 使用 MongoDB Atlas 作为数据库,确保数据的可靠存储和访问
  • 优化了 CORS 设置,确保前后端可以安全通信
  • 增强了错误处理和日志记录,提高了系统的可调试性
  • 更新了 Node.js 版本要求,确保使用最新的稳定特性
  • 改进了 MongoDB 连接逻辑,增加了更多的错误处理和重试机制
  • 优化了用户界面,提供更直观和美观的设计
  • 新增设置页面,允许用户自定义应用的各种选项
  • 改进了日历事件的显示效果,使其更加清晰和易读
  • 优化了移动端的响应式设计,提供更好的跨设备体验

技术栈

  • 前端:HTML5, CSS3, JavaScript (ES6+), FullCalendar.js
  • 后端:Node.js, Express.js
  • 数据库:MongoDB Atlas
  • AI服务:讯飞开放平台
  • 部署:Vercel (前端), Render (后端)

如何使用

  1. 访问 https://chuyan.vercel.app 打开前端应用
  2. 使用聊天框添加新任务,或点击"添加课程表"按钮导入课程表
  3. AI助手将解析您的输入并提取相关信息
  4. 在弹出的确认对话框中确认任务详情
  5. 确认添加任务后,查看日历中自动更新的任务安排
  6. 点击日历中的事件可以查看详细信息,包括原始输入文本
  7. 使用设置页面自定义应用行为和外观

开发者指南

前端开发

  1. 克隆仓库:git clone [your-repo-url]
  2. 进入前端目录:cd frontend
  3. 安装依赖:npm install
  4. 启动开发服务器:npm run dev

后端开发

  1. 进入后端目录:cd backend
  2. 安装依赖:npm install
  3. 创建 .env 文件并设置必要的环境变量(如 MONGODB_URI
  4. 启动开发服务器:npm run dev

部署

  • 前端:将代码推送到 GitHub,Vercel 将自动部署更新
  • 后端:将代码推送到 GitHub,在 Render 仪表板中手动触发部署

注意事项

  • 确保在生产环境中正确设置所有必要的环境变量
  • 定期检查并更新依赖包,以确保安全性和性能
  • 监控 Vercel 和 Render 的日志,及时发现和解决问题

未来计划

  • 实现用户认证和授权系统
  • 添加数据同步功能,允许用户在多个设备间同步日程
  • 实现用户登录功能,支持个人化设置和数据保存
  • 添加更多的日程类型和自定义选项
  • 进一步优化移动端体验
  • 实现多语言支持
  • 集成更多第三方日历服务
  • 添加数据分析功能,提供用户日程统计和洞察
  • 实现团队协作功能,允许用户共享和协同编辑日程
  • 开发桌面和移动应用版本

贡献

欢迎贡献代码或提出建议!如果您发现任何问题或有改进意见,请创建一个 issue 或提交一个 pull request。

许可证

本项目采用 MIT 许可证。详情请见 LICENSE 文件。