Code Monkey home page Code Monkey logo

github-reminders's Introduction

GitHub-Reminders

Server side app and Webhook to parse GitHub Issue Comments and generate scheduled Email reminders based on the parsed comment

Sinatra + GitHub OAuth + Qless + Chronic gem + Email = GitHub-Reminders

Reminder Syntax

While in a Issue make a comment with the following:

  • :alarm_clock: Next Friday at 3:05pm #=> โฐ Next Friday at 3:05pm

  • :alarm_clock: [Date/Time] | [Reminder Comment]

screen shot 2014-05-07 at 10 47 57 pm

Notes:

  1. The Reminder Syntax must be at the beginning of the Issue Comment.

  2. The goal is to treat the comment as a "record" containing the Reminder.

  3. The separator between the Date and time of the reminder and the "reminder comment" is the pipe character | (above the enter/return key). Future versions will support Reminder Comments in new lines without the need for the | pipe.

  4. The DateTime is parsed by the Chronic gem. Any date and time format the Chronic gem can parse is supported.

  5. GitHub.com provides all timestamps as a UTC timezone, therefore you will need to choose your timezone in your "profile" in the Sinatra app. The reminder's Date/Time will parsed using your profile's timezone.

  6. The Sinatra app will provide the ability to view your scheduled reminders for each repo/issue queue and a set number of "completed" reminders.

  7. MailGun.com Email API is being used to send emails. The code has been designed to be agnostic of the specific email service.

Features to be built

  1. Once hook is added to the repo, any user can signup and receive notifications

Process Overview:

process overview

github-reminders's People

Contributors

stephenott avatar zachallett avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.