Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sycanz04/schedulr

A chrome extension that transfers timetable from CLiC to Google Calendar.
https://github.com/sycanz04/schedulr

google-api google-calendar javascript web-scraping

Last synced: 2 months ago
JSON representation

A chrome extension that transfers timetable from CLiC to Google Calendar.

Awesome Lists containing this project

README

        

# Schedulr 📅
A chrome extension that imports your **MMU CLiC** timetable into Google Calendar and other calendars like Outlook and Apple Calendar.

https://github.com/user-attachments/assets/b9e1409c-e5e3-4159-a5ff-86cfa49d3a7c

## Table of Content
- [Requirements](https://github.com/sycanz04/schedulr?tab=readme-ov-file#requirements-)
- [Installation](https://github.com/sycanz04/schedulr?tab=readme-ov-file#installation-)
- [Usage](https://github.com/sycanz04/schedulr?tab=readme-ov-file#usage-%EF%B8%8F)
- [Import timetable into Google Calendar](https://github.com/sycanz04/schedulr?tab=readme-ov-file#to-import-calendar-into-google-calendar)
- [Import timetable into other calendars](https://github.com/sycanz04/schedulr?tab=readme-ov-file#to-import-calendar-into-other-calendars-like-outlook-apple-calendar)
- [Key Binding](https://github.com/sycanz04/schedulr?tab=readme-ov-file#key-binding-%EF%B8%8F)
- [Linux and Windows](https://github.com/sycanz04/schedulr?tab=readme-ov-file#linux--and-windows-)
- [macOS](https://github.com/sycanz04/schedulr?tab=readme-ov-file#macos-)
- [Project status](https://github.com/sycanz04/schedulr?tab=readme-ov-file#project-status-)
- [Tech Stack](https://github.com/sycanz04/schedulr?tab=readme-ov-file#tech-stack-)
- [Changelog](https://github.com/sycanz04/schedulr?tab=readme-ov-file#changelog-)
- [Privacy policy](https://github.com/sycanz04/schedulr?tab=readme-ov-file#privacy-policy-)
- [License](https://github.com/sycanz04/schedulr?tab=readme-ov-file#license-%EF%B8%8F)
- [Why this project?](https://github.com/sycanz04/schedulr?tab=readme-ov-file#why-this-project-)
- [Buy me a coffee](https://github.com/sycanz04/schedulr?tab=readme-ov-file#buy-me-a-coffee-)
- [Credit](https://github.com/sycanz04/schedulr?tab=readme-ov-file#credit-)

## Requirements 👀
- MMU student with **"Active"** current student status **ONLY**.
- Chrome browser **ONLY**.

## Installation đŸ“Ļ
1. Go to the [extension's page](https://chromewebstore.google.com/detail/schedulr/ofaflpillnejkhmkefmcpoamjeaghipp) or search up "Schedulr" in Chrome Web Store.
2. Click "Add to Chrome".

## Usage 🕹ī¸
Note: Some steps after step 4 may vary depending on your target calendar.

#### For students:
1. Go to "View My Classes/Schedule > By Class" in CliC. ***(Ensure all subjects are expanded)***
2. Open the extension by using the [shortcut key](https://github.com/sycanz04/schedulr?tab=readme-ov-file#key-binding-) or by clicking the extension icon.
3. An authentication window will appear, grant permission for both scopes and then reopen the extension.
#### For lecturers:
1. Go to "Instructor Workstation > My Weekly Schedule" in CLiC.
2. Open the extension by using the [shortcut key](https://github.com/sycanz04/schedulr?tab=readme-ov-file#key-binding-) or by clicking the extension icon.
3. An authentication window will appear, grant permission for both scopes and then reopen the extension.

#### To import calendar into Google Calendar:
4. Select **Transfer to Google Calendar**, then click **Confirm**.
5. Select the semester length: either **Short (7 weeks)** or **Long (14 weeks)**.
6. Select your event format and reminder settings
7. Pick the target calendar. ***(Your main calendar is typically the one linked to your email)***
8. Choose an event colour.
9. Press the **Submit** to transfer timetable to Google Calendar.

#### To import calendar into other calendars (like Outlook, Apple Calendar):
4. Select **Download an .ics file**, then click **Confirm**.
5. Select the semester length: either **Short (7 weeks)** or **Long (14 weeks)**.
6. Select your event format and reminder settings
7. Press the **Submit** to download the .ics file.
8. Go to your target calendar and import the .ics file.

***Tip**: An .ics file lets you import events into other calendar apps like Outlook.*

## Key binding ⌨ī¸
The shortcut key opens up the popup page
### Linux 🐧 and Windows đŸĒŸ
- `Alt+Shift+S`
### macOS 🍎
- `Command+Shift+S`

## Project status âŗ
Schedulr version 3.0.1 is available on [Chrome Web store](https://chromewebstore.google.com/detail/schedulr/ofaflpillnejkhmkefmcpoamjeaghipp) as of now.

## Tech Stack 🚀
1. Javascript
2. Google calendar API
3. HTML
4. CSS

## Changelog 📁
Detailed changes for each release are documented in the [release notes](https://github.com/sycanz04/schedulr/releases).

## Privacy policy 📜
Please read the [Privacy Policy](https://www.mmuschedulr.com/privacy-policy.html) for this extension before proceeding.

## License ⚖ī¸
This project is licensed under the GNU General Public License v3.0 - see the [LICENSE](https://github.com/sycanz04/schedulr/blob/main/LICENSE)

## Why this project? 🛌
Imagine a world where you can automate your life - cool right? I initially created this to save time on manually transferring my timetable but it seems I've spend more time building it than I would have transferring the timetable manually...oh well.

Since this is my first web project, I'd love to hear any suggetions for improvements you might have!

## Buy me a coffee ☕
I seem to have developed a bit of an addiction to espresso shots, so if you're feeling generous, feel free to [buy me a coffee](https://ko-fi.com/sycanz)!

## Credit 🤝đŸģ
This project was developed at [Hackerspace MMU](https://hackerspacemmu.rocks/). Also shoutout to a couple of friends who helped me out on this project.