Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GSoC Idea: Posts timed reminders #164

Closed
agarciamontoro opened this issue Feb 18, 2022 · 0 comments
Closed

GSoC Idea: Posts timed reminders #164

agarciamontoro opened this issue Feb 18, 2022 · 0 comments
Labels
GSoC/Difficulty: Medium Medium project ideas for Google Summer of Code GSoC/Size: 175 hours Medium-sized project ideas for Google Summer of Code (~175 hours) GSoC Project idea for Google Summer of Code

Comments

@agarciamontoro
Copy link
Member

agarciamontoro commented Feb 18, 2022

Summary

  • Project Outcome: Publish a plugin that manage timed reminders on posts that should be read later.
  • Project Size: 175 hours
  • Difficulty: Medium
  • Mentors:

Description

It's usual that we read an interesting message but don't have time to process it at the moment. Some of us use the Mark as unread feature or the TODO plugin for this, but it would be very valuable to have a feature that reminds us of that specific message in some time, generating a new notification in 30 minutes, one hour, or the next day.

This project is focused around that specific feature, and the goal is to build a new plugin that adds a new entry to the post menu for selecting a time at which the user will be reminded of that specific message. The community has already started development on this, but it was never finished, so this is an opportunity to bring back that work and take it to the finish line, better defining its scope and usability on the process.

Project Goals

The key deliverable will be a GitHub repository that includes the code for the plugin and documentation for how to install, configure, and use it. This repository can be permanently hosted on the contributors profile or on the Mattermost GitHub organization depending on the contributor’s preferences. If time permits, a stretch goal will be to include the plugin in the official Mattermost integrations marketplace to make it available by default on all Mattermost instances.

Your solution should include the following capabilities:

  • Snooze a post until later
    • Define an absolute or a relative time
    • Optionally hide the message until the reminder triggers
  • Manage a queue of snoozed messages
    • See all messages that were postponed
    • Modify the reminder timer on each of those messages
    • Remove them from the queue, manually marking them as read

Optional features that can be added as a stretch goal include:

  • Using the new scheduling system but applying it to sent messages
    • Manually defer sending a message by some amount of time
    • Automatically defer sending a message until the recipient is online
    • Use a rules-base system to schedule messages

Required Skills

  • React / Redux in Typescript
  • Go
  • SQL
  • REST
@agarciamontoro agarciamontoro added GSoC Project idea for Google Summer of Code GSoC/Difficulty: Medium Medium project ideas for Google Summer of Code GSoC/Size: 175 hours Medium-sized project ideas for Google Summer of Code (~175 hours) labels Feb 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GSoC/Difficulty: Medium Medium project ideas for Google Summer of Code GSoC/Size: 175 hours Medium-sized project ideas for Google Summer of Code (~175 hours) GSoC Project idea for Google Summer of Code
Projects
None yet
Development

No branches or pull requests

1 participant