A lot of servers admins currently struggle making sure everyone is informed on what are new on their Fediverse node. Even if there is an admin account being followed by the whole instance, regular announcements from the admins, a lot of people can be left aside and don't understand the changes.
I would suggest a new feature for admins to be able to make announcements to their users, trough an API and trough the WebUI, like a little column you can open with "news" and persistent notification until read.
Code-wise I don't really know what would be the best for it, since it would take a lot of space to track down every announcements read by users I suggest having an simple number you increase, like there is 5 announcements made since the beginning, and your "number" is 4, it mean there is still one announcement you missed.
Of course if you read the announcements, it mark them all as read, because you can't track down individuals announces.
The list of announces would be retrievable trough an endpoint, and another endpoint to update the "read state".
A lot of servers admins currently struggle making sure everyone is informed on what are new on their Fediverse node. Even if there is an admin account being followed by the whole instance, regular announcements from the admins, a lot of people can be left aside and don't understand the changes.
I would suggest a new feature for admins to be able to make announcements to their users, trough an API and trough the WebUI, like a little column you can open with "news" and persistent notification until read.
Code-wise I don't really know what would be the best for it, since it would take a lot of space to track down every announcements read by users I suggest having an simple number you increase, like there is 5 announcements made since the beginning, and your "number" is 4, it mean there is still one announcement you missed.
Of course if you read the announcements, it mark them all as read, because you can't track down individuals announces.
The list of announces would be retrievable trough an endpoint, and another endpoint to update the "read state".
API endpoint to retrieves announcements
API endpoint to create/edit/remove announcements
API endpoint to get announcements list
API endpoint to get announcements "size" (used to calculate if the user read it)
API endpoint to get user's announcements "size"(used to calculate if the user read it)
API endpoint to set user's announcements "size"
Admin interface to create, delete, edit announcements
User interface read announcements