ezl / todo

0 stars 0 forks source link

Assign tasks to other people!!! #103

Open ezl opened 2 years ago

ezl commented 2 years ago

@yassinya I'm going to try something different here. I'm going to try to just DESCRIBE the functionality instead of actually designing it and see if you can implement something.

I'll try to describe it clearly, but please feel free to ask any questions you need to in order to clarify. Also, I'm completely making this up, so if you think it won't work or there are major issues, please let me know what you think, so we can discuss.

Main Goal

The main goal of this is to create a way that I can ASSIGN tasks to OTHER people.

Key Ideas

A few key points, that are different from how many other apps work, which is driving different design decisions.

  1. I do NOT want the other person to have to EXPLICITLY create an account. What I mean by this is that they should not have to go through a signup flow. Instead, when they get invited, we are basically going to just CREATE an account for them.
  2. It should be VERY EASY for me to invite someone else / assign a task to someone else. The idea here is that you can invite someone by just typing their email address into the to do list item.

Implementation Steps

That's the basics.

We'll have to decide what to do with:

yassinya commented 2 years ago

Thoughts:

the FIRST task that is ever assigned to a user (invitaiton email) vs FUTURE ones (probably do NOT send an email on every task assigned - this could be annoying)

Instead of re-sending invitation for every future assignment by the same person, I think we should (once the initial invitation is accepted) add the user to some sort of a “team” that belongs to the person inviting. This will allow us to easily display assigned tasks in the user's account, and potentially dispatch an in-app notification

Can we use the ACTUAL task? not clone or copy -- actual SHARED items with permisisons on the backend?

Yes, absolutely! Copying every assigned task would be overkill & make it harder to track/manage

Questions:

Once a user accepts an invitation, will they be able to only see tasks that were assigned to them? Or will they be able to view all the tasks of the person who invited them? @ezl