/easy-gmail-scheduler

:mailbox: Easily schedule Gmail messages. No third parties, local servers, or labels.

Primary LanguageJavaScriptMIT LicenseMIT

Easy Gmail Scheduler

Responsive Gmail scheduler built with Bootstrap 3 and running on Google Apps Scripts.

Developed and designed by Raybb.

screenshot example

Demo

Check it out:

  • live (dummy data, no authorization)
  • live (your data, requires authorization)

Features

  • Schedule unlimited emails
  • Automatically loads drafts
  • Email sent in case of error
  • No 3rd party servers
  • Responsive and mobile friendly layout
  • Lightweight (only 160KB)

Future Features

  • Render with React and JSX
    • Visual warning if scheduled email isn't found in drafts
  • Offline mode
  • Welcome email

Known Issues

  • When embedded in an iframe page must first start at 101% height and then be shrunken to allow scrolling.

Limitations

  • Google Apps Scripts are limited to sending 100 emails per day for Gmail users and 1,500 for G Suite users. Source

Installation

  • Visit Google Drive
  • Click New > More > Google Apps Script
    • Copy backend/gmail.js to the main code.gs file
  • Click File > New > Html file
    • Name it index.html and copy frontend/index.html into it
  • Click Publish > Deploy as web app
    • Execute the app as: "User accessing the web app"
    • Who has acces to the app: "Anyone"
    • Click Deploy
    • Copy link and enjoy! :)

Inspiration

For years I've wanted to be able to send emails later for various reasons. Sometimes to get at the top of their inbox when they'll be in the office. Sometimes to just make sure an email is sent in the morning but gives me times to think on it but not worry about sending it.

The main solutions I found at the time, in 2016, were Right Inbox and Boomerang. Both had free tiers to send a few emails but required giving a third-party access to your email.

I stumbled upon Google Apps Scripts and realized their APIs could do just what I needed. It didn't take long until I bumped into the Gmail scheduler by labnol.org. I now knew it was possible but really didn't like the idea of having to open a spreadsheet to schedule the emails. I knew it was possible to make a simpler version of their script with a nice web interface so that's what I did. Big thanks to labnol.org for their original work. I did end up using their function for sending drafts since it was already well made.

Dependencies

How can I support developers?

  • Star our GitHub repo ⭐
  • Create pull requests, submit bugs, suggest new features or documentation updates 🔧

License

MIT license.