Epic: To Do List - ac486/IS421 GitHub Wiki

To-Do List

Our project idea will be a reminder/to-do list system. This will be similar to trello but more organized and team oriented.

Group/Team system

A user will be able to create a new group in which they can invite other users to join. The groups will be able to share reminders and to-do lists to get a certain project/task done. There will be owners of lists and contributors who can modify the list.
  • As a user, I will be able to create a group and invite others to join
  • As a user, I can add tasks to the to-do lists for the group to work on
  • As a user, I can create a new list to add tasks so that multiple tasks can be grouped and organized can be organized
  • As a user, I can mark tasks as 'in progress' so that the rest of the group knows I am working on it
  • As a user, I can mark tasks as complete so that the rest of the group knows it is done

Permissions

Users will have set permissions as to how they can interact with the lists such as adding/removing, editing or just marking completion.
  • As a group owner, I will be the admin for the project so that I can control user permissions
  • As a project admin, I can grant users the right to add or delete tasks or to modify a tasks completion status
  • As a project admin, I can grant other users as project admins

Notifications

Notifications can be sent out by email so that users who do not frequent the site will be able to stay up to date with a project.

Requirements:

3 column to-do list:
  1. List of tasks assigned by team members
  2. List of work in progress
  3. List of completed tasks

Use of pubsub:
When someone marks assignment as done, everyone subscribed to the channel will be notified of completion

⚠️ **GitHub.com Fallback** ⚠️