Skip to content

mtimkovich/rip_quick_add

Repository files navigation

RIP Quick Add

Quickly create Google Calendar events from natural language.

preview.png

Quick Add was a Google Calendar feature that enabled creating calendar events from natural language text input. It was removed for no reason and upset many people. This is my attempt to carry on its legacy. It uses the Chrono library to extract time data from text.

How it works

  1. Takes a text input e.g. "Dinner friday 7pm"
  2. Parses the input to find date info
  3. Returns a Google Calendar URL for adding the event to your calendar.

Select any text that has date information (e.g. Movie at 2:30pm tomorrow) and right-click and use the context menu to add the event to your calendar.

Alternatively, events can be created by clicking the app icon and entering the event info in the text box.

Language

User can choose the language in which they would like to parse the input text in extension options page.

Currently supported languages are:

  • English
  • French
  • Dutch
  • Japanese
  • Russian
  • Portuguese
  • Ukrainian
  • Chinese
  • German
  • Spanish

Supported languages depends on the Chrono node module locales.

Usage

Chrome Extension

Install the Chrome extension from Chrome Web Store.

Chrome Search Engine

Adding https://timkovi.ch/rip_quick_add_api?text=%s as a search engine in Chrome will enable you to create calendar events from the address bar.

There is an optional lang parameter to set the language.

Web App

Alternatively, I have a running implementation on my website. This is useful when you're on a device without Chrome extensions, like a phone.

Local

If you want to develop locally:

yarn install

This app uses rollup transpiling to use the JavaScript modules pattern.

  • yarn build: transpile all scripts into chrome-extension directory
  • yarn watch: transpile all scripts into chrome-extension directory and re-transpile automatically on changes
  • yarn server: run a local instance of the RIP Quick Add API server.

Documentation

The "API" this app is using is documented here.

Author

Max Timkovich