Skip to content

Latest commit

Β 

History

30 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Private ICS Calendar Merge

Automatically merges multiple iCalendar (.ics) files inside the calendar/ folder into a single calendar.ics published directly to a Secret GitHub Gist.

πŸš€ How It Works

  1. Add, modify, or remove .ics files in the calendar/ folder.
  2. Pushing changes triggers a GitHub Action that parses all VEVENT entries across your calendar files.
  3. The workflow patches the combined calendar directly to your private, unlisted GitHub Gist via API.

πŸ“‚ Project Structure

.
β”œβ”€β”€ .github/
β”‚   └── workflows/
β”‚       └── merge.yml     # Auto-merge and Gist sync workflow
└── calendar/
    └── .UPLOAD ICS FILES HERE      # Base calendar template


βš™οΈ Setup Instructions

1. Create a Secret Gist

  1. Go to gist.github.com.
  2. Create a file named calendar.ics with basic .ics structure and click Create secret gist.
  3. Copy the Gist ID from the URL (https://gist.github.com/username/GIST_ID).

2. Configure Repository Secrets

Go to Settings > Secrets and variables > Actions in this repository and add:

  • GIST_ID: Your Secret Gist ID.
  • GIST_TOKEN: A GitHub Personal Access Token (classic) with the gist permission scope enabled.

πŸ”— Calendar Subscription

  1. Head to https://gist.githubusercontent.com/<USERNAME>/<GIST_ID>/raw/calendar.ics.
  2. Copy the resulting URL into Apple Calendar, Google Calendar, or Outlook to subscribe.

About

Merges multiple .ics files in the calendar/ directory into a single calendar.ics hosted on a Secret GitHub Gist.

Resources

Stars

49 stars

Watchers

0 watching

Forks

Contributors