Pushing events from Grist to Radicale

I had a use case that I couldn’t find a ready solution for and decided to write my own:
A small self-hosted sync server to push events from Grist to Radicale (which is a CalDAV server).
Basically, I want to use/edit data in Grist, but have a “CalDAV viewport” via Radicale, so that I can check it from my phone (via CalDAV sync).

It’s open-source and can be found here, maybe somebody else has a use for it.

The flow is like this:

  • Set up a Grist database for calendar use (at least start, end, description)
  • Set up a webhook to where you’re hosting the sync server
  • Edits/adds will trigger the sync (debounce of 10 seconds)
  • Sync server grabs all Grist rows, compares them to the existing events on the Radicale calendar and updates/deletes/adds as necessary
1 Like

Hi Ich,
Congrats for this !
I’m really interested in it but I don’t have the level to make it work, I’m really not familiar with github things, but if someone makes a tuto video to show it once, I’ll be delighted !!
Have a nice day !
Mat’

Hey,

I’d like to help, but don’t know where you’re starting from.

I’d recommend using the docker deploy from the Readme and to look for existing tutorials on:

  • Cloning a Github repository
  • Using Docker and specifically docker compose to launch services
  • Configuration via environment variables (= how do environment variables work)

I’m happy to give you pointers for a specific problem, but I don’t have the resources to make a tutorial on launching this “from scratch”

Thank you for you answer! Very kind of you.
So, I understand that the first step is to clone the repository to make it my own, on my github account. Ok, I think I already made that in the past for another grist extension.
I’ll try it when I have a bit of time and come back here if I’m stuck.
Thanks again
Mat’