Yapper intends to provide a simple, ad-free and data collection-free social media platform. It is realized by Java and C# code with UI done in Blazor. The data is stored and managed through PostgreSQL database. Yapper takes advantage of gRPC communication, Rest API and RabbitMQ. The result is working web application that satisfies stakeholder needs.
1. As a social media user, I want to be able to publish a post so that I can interact with others.2. As a social media user, I want to be able to edit a post I made in case I want to change something about it.
3. As a social media user, I want to be able to like other social media users' posts so I can interact with them.
4. As a social media user, I want to be able to delete a post I made in case I do not like it anymore.
5. As a social media user, I want to be able to comment on a post so I can share my thoughts.
6. As a social media user, I want to be able to like a comment so I can show my interest.
7. As a social media user, I want to be able to edit a comment in case I want to change something about it.
8. As a social media user, I want to be able to delete a comment in case I do not like it anymore.
9. As a social media user, I want to be able to classify a post in a category so my post can be found easier.
10. As a social media user, I want my liked posts to appear in my profile page so I can access them quickly.
11. As a social media user, I want to be able to search for accounts and posts so I can find them easier.
12. As a social media user, I want to follow an account so I can see what they post.
13. As a social media user, I want to unfollow an account so I can stop interacting with other social media users.
14. As a social media user, I want to be able to create an account, so I can start using the site.
15. As a social media user, I want to be able to edit my account details, in case there's a change in my personal data.
16. As a social media user, I want to be able to chat with other people so I can talk to my friends easier.
17. As a social media user, I want to be able to see who follows me, who I follow, who other people follow and who follows other people, so I have a comprehensive overview.
18. As a social media user, I want to be able to filter by category so I can see posts I am interested in.
19. As a social media user, I want to be able to receive notification so I can be notified when someone interacts with me.
20. As a social media user, I want to be able to mark the posts that I am not interested in so I can see only the things I like.
21. As a social media user, I want to be able to delete my account in case I do not want to be on the site anymore.
22. As a social media user, I want to be able to create a category creation request, so I can choose more specific categories when making a post in future.
23. As a social media user, I want to be able to see recommended profiles so I can follow more accounts.
24. As a social media user, I want to be able to report a post if I think it is violating terms and conditions.
25. As a social media user, I want to be able to login, so my profile is exclusive only to me.
26. As a moderator, I want to be able to delete a post in case it is offensive.
27. As a moderator, I want to be able to review reports so I can make the website a better place.
28. As a moderator, I want to view category creation requests, so that I can help social media users organize content and engage with others more easily.
29. As a moderator, I want to be able to see a list of posts so I can have an overview.
30. As a moderator, I want to be able to see a list of accounts so I can have an overview.
31. As a moderator, I want to be able to create, edit and delete post categories, so users can have better experience on the site.
32. As a moderator, I want to be able to login, so that only authorized people can manage the site.