Calendar that can accept several CRUDs as event sources, also with customizable labels.
You add CRUDs as sources online - as many as you want, and then you download the calendar as part of your generated code.
To view the data in a calendar form, we use FullCalendar.io library.
Disclaimer: FullCalendar is great for displaying events, but it isn't a complete solution for event content-management. Beyond dragging an event to a different time/day, you cannot change an event's name or other associated data. It is up to you to add this functionality through FullCalendar's event hooks.