A browser extension for Google Calendar that provides insights into where your time goes. Includes power user tools, data export and customization
Features:
- Plot your week/month/year using Bar Chart, Pie Chart or a Time Chart
- Adds ability to ghost an event (make it semi transparent and non-interactive)
- Adds ability to condense the interface to have more space for events
- Adds autocomplete for event names when creating events
- Allows to automatically place events into correct calendars based on defined rules
- Supports exporting plotted data and exporting/importing plugin settings
Pre-requisites:
Node.js 18
Npm 8
(Run all commands from the /src directory) Install dependencies:
npm install
Build the front-end for production:
npm run build
Start the watcher script which would rebuild the code on any changes:
npm run watch
Load unpacked extension into Chrome by following the instructions.
Note, on any code change, you will have to press the Reload Extension
button
in the top left corner of Google Calendar in order to see the newest changes.
You may have noticed that despite our app being built with React, React DevTools browser extension does not work for debugging it.
Instead, a standalone React DevTools (an Electron app) needs to be used. Installation Instructions,
Note, this will only work for when WebPack is run in development mode as we disabled react DevTools integration in production to reduce bundle size.
Unit tests are powered by Jest. Static Typechecking is powered by TypeScript.
You can run both like this:
npm test
or:
npm t
Alternatively, you can start Jest in watch mode:
npm run unitTests:watch
cd src
npm run docs