Proakademia2GCal: Supercharge Your Proakademia Calendar π β¨
π Tired of slow apps and messy schedules? Meet Proakademia2GCal!
Created by a first-year student at UAFM π, this tool imports your Proakademia schedule straight into Google Calendar ποΈ β fast, simple, and color-coded!
Why choose Google Calendar?
- β‘ Instant access from any device β open it right in your web browser or via the official mobile app on iOS and Android
- π Cross-platform convenience β no need for extra apps or downloads to check your schedule
- π¨ Vibrant color-coding for events: lectures π€, labs π, exams β€οΈ β so your calendar is always clear and organized
Proakademia2GCal lets you:
- π§Ή Clean and optimize your ICS file for a smooth, error-free import
- ποΈ Automatically create a dedicated "Study" calendar for your classes
- π§Ό Keep your calendar clutter-free by removing old events automatically
Get started:
- π Use the flexible Python script for maximum control
- π Or download ready-to-run apps for Windows π» and Linux π§
Simplify your study life β schedule smarter, not harder!
See the magic happen! β¨ This animation shows how the script imports your ICS schedule into Google Calendar.
| Before | After |
|---|---|
![]() |
![]() |
| Before | After |
|---|---|
![]() |
![]() |
Color legend (event types):
- β€οΈ Tomato β Exam
- π Grape β Online or Cancelled
- π€ Graphite β Lecture
- π Basil β Class / Seminar
- π Peacock β Laboratory
- π Banana β Other / Unknown
You can change colors by editing the COLORS dictionary and related conditions in the code.
Want it fast and easy? Use the compiled executables from Releases!
- Windows: Grab
ics_edit_windows.exeand go!
- Linux: Grab
ics_edit_linuxand go!
Heads up! For those sweet color-coded events like in the preview, you'll need the Python script and ics_import (see Examples above). The executables handle the core import, but Python unlocks the color magic β¨.
This is a general guide on how to import an ICS file into Google Calendar.
Getting started is easy β just follow these steps to supercharge your schedule with a few commands! β‘
First, grab the project from GitHub:
git clone https://github.com/Anghkooey/Proakademia2GCalBefore launching the script, make sure you have all dependencies:
pip install gcsa ics pytz oauthlib httplib2All the Python magic happens inside the src/ folder. Navigate there:
cd Proakademia2GCal/srcYour environment is now ready to sync your academic calendar like a pro! β
This step allows the script to connect to your Google Calendar securely via OAuth2.0 π
-
ποΈ Create a Google Cloud Platform (GCP) Project: π Step-by-step guide βοΈ Make sure to enable the Google Calendar API in your project.
-
π§Ύ Configure the OAuth Consent Screen: π Follow this guide Let Google know whoβs asking for access (you).
-
π Create OAuth 2.0 Client ID Credentials: π οΈ Use this official guide Then, download the generated
credentials.jsonfile. -
ποΈ Place Your Credentials Correctly: Move or copy the
credentials.jsonto the following directory in your home folder:~/.credentials/credentials.jsonπ‘ If the
.credentials/directory doesn't exist β just create it!
π Need a visual walkthrough? Google provides a great Python Quickstart that walks you through the steps.
from main import ics_import
calendar_id = "YOUR_CALENDAR_ID" # Replace with your actual Calendar ID
ics_import(calendar_id)(Assuming you have calendar_id defined in config.py)
from main import ics_import
ics_import()from main import ics_edit
ics_edit()This function helps clean up and adjust event times.
- Calendar Handling: Creates a new "Study" calendar or uses an existing one.
- Time Zone Magic: Ensures events are in your calendar's time zone.
- Cleanup Crew: Removes old events to keep your calendar tidy.
- Color Coordination: Assigns colors based on event type.
- ICS File Path: Modify
ics_pathto use a different ICS file. - Authentication: Set
open_browser=Falseif you've already authenticated.
Feel free to contribute! Fork the repository, create a branch, and submit a pull request. Let's make this script even better together! πͺ
Licensed under the GNU General Public License v3.
For detailed information about the gcsa library, visit: gcsa Documentation






