Skip to content

melissachang/reminders-in-gmail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

How to recreate Inbox features in Gmail

Have Reminders in Gmail

I was an avid user of Reminders in Inbox. Since Inbox was deprecated, I've come up with a system that's almost as good.

Basically Reminders are emails. See example screenshots:

web email

How to consume reminders

Reminders are just emails, so you can snooze/archive like normal.

If you want a minimal Inbox-like UI, use the Simplify extension. I recommend using this extension with Gmail's Soft Gray theme, as JR recommends.

How to create reminders

Summary

Extra work compared to Inbox
One-time reminder on desktop Send email to self 5 keystrokes
One-time reminder on Android Email Yourself widget 1 tap
Repeating reminder Repeating calendar event None

Desktop

  1. Press c to compose an email
  2. Type the first letter of your email. Press Enter to select your email from the auto-complete drop-down. Press tab
  3. Put reminder in email subject
  4. If you want the Reminder to show up right away: Press tab tab Enter
  5. If you want to schedule for later, use the Scheduled Send feature. Click the arrow next to Send button.

Extra work compared to Inbox

  • 3 keystrokes from Step 2)
  • 2 keystrokes from Step 4) (tab tab)
Create an editable reminder

Occasionally I'll want an editable reminder. For example, I may use a reminder to keep track of remaining work on a small project.

  • Compose an email and enter reminder
  • Find the email in the Drafts folder and move to Inbox
  • Now you can edit reminder

Android

Inbox had a widget to create a Reminder. Similarly, I use a widget to send email, with my address preconfigured as the recipient.

One-time setup:

  • One-time setup: Install Email Yourself Android app. I use this many times a day; it's well worth the $5 to me. Grant both requested permissions.
  • Create the widget.
    • In App drop-down menu, select Gmail app. This way, you'll be able to do Scheduled Send in addition to regular Send, for reminders that you want to appear later.
    • Put your email in the To field.

Create a reminder:

  1. Tap widget icon
  2. Tap Subject
  3. Enter Reminder
  4. If you want the Reminder to show up right away: Tap Send icon
  5. If you want to schedule for later, use the Scheduled Send feature. Tap on 3-dot menu on upper right and select Schedule Send.

Extra work compared to Inbox Step 2), which is one tap. (Unfortunately this step is required.)

Repeating reminders

Inbox had repeating Reminders. With Gmail, emails can't snoozed repeatedly. So instead, I create repeating calendar events. I get an email notification for each event.

Ideally I could use JR's IFTTT applet. But I couldn't get that working. I keep getting "There was a problem with the Gmail service.". (I've tried deleting and recreating the Google Calendar/Gmail service connections, recreating the applet, etc.)

Then I tried Zapier. That worked, but the emails had a lot of boilerplate.

So finally I settled on Google Calendar notification emails, with AppsScript to delete the boilerplate.

Defualt Google Calendar notification emails:

default calendar email

I use an Apps Script to forward the email, getting rid of the boilerplate:

forwarded email

One-time setup:

  1. If you don't already have one, acquire a secondary Google account. This is so you don't clutter the calendar of your primary account.
  2. Go to Calendar settings for the secondary account. For Event notifications, set default to Email 1 minutes. For All-day event notifications, set default to Email 0 days before at 6:00am.
  3. Go to script.google.com and create a new script with:
    function forwardCalendarEvents() {
      var threads = GmailApp.getInboxThreads();
      for (var i = 0; i < threads.length; i++) {
        var message = threads[i].getMessages()[0];
        if (message.getFrom().indexOf("calendar-notification@google.com") != -1) {
          // For events with long names, Calendar truncates event name in email subject (with "...")
          // So grab event name from email body
          var plainBody = message.getPlainBody();
          // Event name is 3rd line
          var eventName = plainBody.split('\n')[2];
          GmailApp.sendEmail(MY_EMAIL, eventName, /* body */ '', {name: 'Reminder'});
          threads[i].moveToArchive();
        }
      }
    }
    
    Replace MYEMAIL with your primary email address.
  4. Edit menu -> Current project's triggers -> Add Trigger. Create a time-based trigger that runs every hour.
  5. For each repeating reminder, create a repeating calendar event for your secondary account.
  6. Optional: Change secondary account's name to Reminder and change profile picture to Inbox Reminder icon (courtesy of here).

Extra work compared to Inbox: None

Have bundles show up in Inbox daily

This was another useful Inbox feature. Say I have a label called My awesome label. I only want emails with My awesome label to appear in my Inbox every morning.

Step 1: Automatically move My awesome label emails out of Inbox (but keep them unread)

Go to the gmail filter that adds My awesome label. Check the Skip the Inbox (Archive it) checkbox.

Step 2: Move unread My awesome label emails to Inbox at 7am every day.

Navigate to https://script.google.com/ and create a script with:

function myFunction() {
  GmailApp.getUserLabelByName('My awesome label').getThreads(0, 42).forEach(thread => {
    if (thread.isUnread()) {
      thread.moveToInbox();
    }
  });
}

Create the following trigger:

image

About

How to get reminders in Gmail, like Inbox had

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published