• adds form to with followup checkbox and date/time of follow up (defaulting to x weeks out)
  • on submit creates a google calendar event at that date time
  • stores record of subject line, recipient(s), and calendar event details


  • checks Subject and sender against stored reminders and on match deletes the associated calendar event


  • default x weeks out reminder
  • default to remind or not to remind


  • Directory of gadgets :
  • Gadgets API Reference :
  • Developing Google Gadgets with the Eclipse GWT plugin :
  • Gadgets fundamentals :
  • gadgets.util :

Outstanding Questions

  • If a google gadget is in an iframe does it have access to the DOM of the gmail page?

Alternative Design

Work Summary

  • Develop greasemonkey script which has a checkbox and text field that when checked fills in the BCC field with a pre formulated string
  • Create domain
  • Enable forwarding by MTA of all email destined for to sender email address
  • Develop polling script which
    • queries via API and deletes followup emails if a reply exists
    • labels emails that have exceeded the “follow up time window”
  • Establish cronjob to call polling script daily



  • Create and enable a greasemonkey script which adds a button of form to flag for followup and optionally designate a “follow up time window”
  • Have this button and or form fill in the BCC field as described below


  • BCC a special email address for emails that require followup (e.g.
    • ALTERNATIVE : BCC an email address at a domain which forwards everything to a single address (e.g.
      • Perhaps embed the follow up time window if it’s not default in the email address name (e.g.
  • Have this email address be delivered to the same mail account as the sender
  • Have the sender’s email system filter and store emails containing the “+r” designator in a special “Follow Up” email folder
    • ALTERNATIVE : Have the sender’s email system filter and store emails destined for the special domain (e.g. * in a special “Follow Up” email folder


  • Create a script which runs via cron and :
    • Connects via IMAP to the sender’s email system
      • ALTERNATIVE : Queries gmail via something other than IMAP for example
    • Reads in all emails in the “Follow Up” folder
      • grabs the following fields :
        • “Subject”
        • “To”
        • “Date”
    • For each “Follow up” mail do a substring search for other mail in the whole IMAP account
      • Which was not sent by the sender
      • For each match, delete the corresponding “Follow Up” email in the “Follow Up” folder
    • For each “Follow up” mail remaining parse the “To” field and look for a non-default “follow up time window” encoded in the address
      • else use a default
    • For each mail if (now() - the “Date” field) > “follow up time window”
      • Take some action like :
        • Email the sender an example reminder email that they can then tweak and forward to the non-responsive recipient
        • Insert a calendar event to follow up on the sent email
        • Update a webpage of outstanding unresponded to emails
        • Flag the followup email with a star or label