Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

school-schedule-sync

anmiles131MIT3.2.0TypeScript support: included

Synchronization between JSON schedule and Google Calendar

school, schedule, google, calendar

readme

school-schedule-sync

Synchronization between JSON schedule and Google Calendar


Installation

git clone https://github.com/anmiles/school-schedule-sync.git
cd school-schedule-sync
npm clean-install
npm run build
copy config/schedule.sample.json config/schedule.json

Adding profiles

This application may work with multiple profiles (create calendar entries in different google accounts).

  1. Come up with any profile name you want
  2. Execute npm run create <profile>

You can create as many profiles as you want.

Authentication

  • npm run login to login into all existing profiles
  • npm run login <profile> to login into selected profile

Usage

  • Make your own schedule in ./config/schedule.json file
  • npm start <profile> to create/recreate calendar entries for selected profile
  • npm start <profile> <calendar_name> to create/recreate calendar entries for selected profile for the specified calendar

changelog

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

3.2.0 - 2025-09-09

Added

  • Added event location to JSON

3.1.0 - 2025-09-02

Added

  • Optional parameter to specify particular calendar to update

3.0.4 - 2025-07-24

Changed

  • Fix vulnerable dependencies

3.0.3 - 2025-07-24

Changed

  • Fix vulnerable dependencies

3.0.2 - 2025-06-04

Changed

  • Use validate from another package

3.0.0 - 2025-06-02

Changed

  • First public release

2.0.2 - 2025-05-24

Changed

  • Fixed path to templates

2.0.1 - 2025-05-19

Changed

  • Fixed expecting refresh_token in temporary credentials

2.0.0 - 2025-05-18

(BREAKING) Dropped support for NodeJS 18 (EOL). Minimum required version is now NodeJS 20.

Changed

  • Migrated to NodeJS 20.19
  • Migrated to ESLint V9 flat configs
  • Updated dependencies

1.0.0 - 2024-09-01

Changed

  • First release