Tl;dr: if you're tired of forgetting events you wrote in your google calendar and you're a heavy pc user, this solves the problem (or helps avoid addressing the actual problem of forgetting)
This project aims to provide a seamless way for users to keep track of their upcoming events by integrating with Google Calendar and displaying notifications on Windows 10. Upon logging in, users receive notifications of their next four events, helping them stay organized without manually checking their calendar.
- Automated Event Retrieval: Automatically fetches and display the top four upcoming events from Google Calendar.
- Persistent Notifications: Displays notifications that stay in the Windows action center after initially showing for 3 seconds.
- Task Scheduler Integration: Creates a task that runs the main script on user login.
- User-Friendly: Minimal setup required with automatic execution on login.
Make sure you have Python installed.
Follow these steps to set up the environment and run the application:
-
Clone the Repository:
git clone https://github.com/Sambonic/google-calendar-notifier
cd google-calendar-notifier
-
Create a Python Virtual Environment:
python -m venv env
-
Activate the Virtual Environment:
- On Windows:
env\Scripts\activate
- On Windows:
-
Ensure Pip is Up-to-Date:
python.exe -m pip install --upgrade pip
-
Install Dependencies:
pip install -r requirements.txt
To begin you have to first setup your credentials file through the following steps:
- Visit https://console.cloud.google.com/apis/credentials
- Press 'Create Credentials' button
- Choose 'OAuth client ID'
- Application Type: Desktop, Name: Anything
- Press 'Create'
- Download the json file and paste it in the 'credentials' and the other 'credentials' folder
- Run the Calender.exe in the Calender folder
- It will ask you to sign in to get to give authorization to the API. Press Continue.
- token.json file should be generated in the other 'credentials' folder
- Copy it into the other folder and all is set
Note: Due to the nature of the project, i.e. automatically running commands to setup the task in the background, it may trigger false warnings from windows defender.
- API Quotas: Google Calendar API has usage quotas. Ensure your use case does not exceed free tier limits.
- Windows Only: This project is designed specifically for Windows 10 and may not work on other operating systems.
- Dependency on Google Calendar: The project requires a Google Calendar account and proper API setup.
This project was undertaken to simplify the process of staying updated with upcoming events directly from Google Calendar without manual checks. It also serves as a practical learning experience in integrating Google APIs, working with Windows notifications, and using Task Scheduler for automation. The goal is to leverage this knowledge in more complex automation and notification systems in the future.