How would I extend app to allow users to share their notes?

Hi All, I really loved this tutorial. I am wondering though, the next step for me would be to allow users to share their notes with each other. For instance, they could click on a notes ‘share’ button and give another user access to see that note. How would you go about designing this given the current app architecture? A few questions:

1.) Would it be reasonable to create another dynamo db table that has a list of all the users that a particular user has shared their todo’s with and then augment the todo list to have another section that also listed out those notes? Or would it make more sense to have a note allow multiple users for the userId field?

1.) How would this impact the IAM permissions so that it would allow one user to see the other users todos securely if they have been shared?


So would a note be shared with other logged in users?

If so, then it’s just a matter of having that note in the list of the notes for that shared user. Currently, you can only see the ones that you created. You can simply add to that. There is nothing IAM related here.

The uploads is a bit different. Currently, they are uploaded to a users “directory” in S3. You would need to change that.

@caseydawsonjordan were you able to figure this out? Interested as well

It’s a little tricky to answer the whole setup in a comment but we’ll be extending the guide to show how to do this.