Skip to content

thesephist/frieden

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Frieden ✌️

Frieden is my personal, read-only public availability calendar, to reduce the back-and-forth in scheduling one-on-one meetings. Try the live app at free.linus.zone.

Frieden is built with my usual arsenal of homebrew tools:

  • A simple Go backend, proxying Google Calendar's API
  • Torus driving the web UI
  • blocks.css for some visual flair

Screenshot

Usage and deployment

Frieden is deployed as a systemd service running as a static binary in Linux. You'll also need your calendars set up correctly with Google Calendar.

Deployment secrets

To run Frieden, you'll need to place a secrets.json file in the root of the project. That file should look like this:

{
    "apiKey": "<your api key>",
    "calendars": [
        "you@gmail.com",
        "another-calendar@gmail.com"
    ]
}

You'll first need a Google Calendar API key, which you can find here on their developer site. Place that in the secrets file as the "apiKey".

You'll also need to configure each calendar you want Frieden to proxy in the following way:

  1. Set "Access Permissions" in calendar settings to be public, and "see only free/busy details" at least (if not full details)
  2. Grab the calendar ID (commonly the user email if it's their primary calendar) and place it in ./secrets.json

With these permissions, Frieden should be able to access the free/busy details of your calendars.