任务管理应用

一个全面的任务管理应用,包含React Native移动应用和Node.js/Express后端API,支持用户认证、任务列表管理、任务创建与完成等功能。

  • by box-community
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 box-community/todo-cursor

使用说明

Todo应用程序

一个全面的todo应用程序,带有React Native移动应用程序和Node.js/Express后端API。这 该文件是使用Cursor和Box-MCP服务器构建的。没有手动编写代码。

在Cursor中,我们在方框中搜索了产品要求文件(PRD)和编码标准,并询问 Cursor构建PRD中描述的应用程序,确保遵循编码标准。查看文档 我们在Box中使用,请查看 /sample-docs 目录。

为了防止欺骗PRD或指导方针,使构建更容易,我使用了以下方法 公开可用的示例:

  • 来自达米安·菲利特劳特的PRD 可扩展路径.
  • 从谷歌的Github下载编码标准

项目结构

  • /mobile-app -React Native移动应用程序与Expo
  • /api -Node.js/Express后端API(带TypeScript)

特性

  • 用户身份验证(注册、登录)
  • 任务列表创建和管理
  • 创建带有名称、描述、截止日期和优先级的任务
  • 将任务标记为已完成
  • 删除任务和列表
  • 跨平台(iOS和Android)

技术栈

移动应用程序

  • React Native与Expo
  • TypeScript
  • 用于状态管理的Redux工具包
  • 世博会导航路由器
  • React Native安全区域上下文用于安全区域处理

后端API

  • Node.js与Express
  • TypeScript
  • MongoDB与Mongoose
  • JWT身份验证
  • 用于请求验证的快速验证器

安装说明

先决条件

  • Node.js 18+
  • MongoDB
  • Expo CLI(npm install -g expo-cli)
  • iOS模拟器(用于iOS开发)
  • 带模拟器的Android Studio(用于Android开发)

移动应用程序设置

# Navigate to the mobile app directory
cd mobile-app

# Install dependencies
npm install

# Start the development server
npm start

# Run on iOS
npm run ios

# Run on Android
npm run android

API设置

# Navigate to the API directory
cd api

# Install dependencies
npm install

# Create a .env file with the following variables
# PORT=3000
# MONGODB_URI=mongodb://localhost:27017/todo-app
# JWT_SECRET=your-secret-key

# Start the development server
npm run dev

# Build the project
npm run build

# Start the production server
npm start

环境变量

移动应用程序

创建一个 .env 文件在 mobile-app 目录包含:

EXPO_PUBLIC_API_URL=http://localhost:3000/api

API

创建一个 .env 文件在 api 目录包含:

PORT=3000
MONGODB_URI=mongodb://localhost:27017/todo-app
JWT_SECRET=your-secret-key

API终点

认证

  • POST /api/auth/register -注册新用户
  • POST /api/auth/login -登录用户

列表

  • GET /api/lists -获取当前用户的所有列表
  • POST /api/lists -创建新列表
  • GET /api/lists/:listId -获取特定列表
  • PUT /api/lists/:listId -更新列表
  • DELETE /api/lists/:listId -删除列表

任务

  • GET /api/lists/:listId/tasks -获取列表中的所有任务
  • POST /api/lists/:listId/tasks -创建新任务
  • GET /api/lists/:listId/tasks/:taskId -获取特定任务
  • PUT /api/lists/:listId/tasks/:taskId -更新任务
  • DELETE /api/lists/:listId/tasks/:taskId -删除任务

贡献

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add some amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

许可证

该项目根据MIT许可证获得许可。