This is a weather integration that uses an API provided by Yahoo! I have hardcoded it for my local area but it could be just as easy to use an input field for desktop or geolocation for mobile to customize to the user. Geolocation is not very accurate for desktop due to the way it locates position. After returning the local weather results, the JSON formatted file is parsed and keywords are searched. The closest representing icon is choosen to display the matched verbiage. This is nothing new, or unique, just something to play with the available technology.
This reads the contents of a file and places the message into the banner below, refreshing every 5 seconds. Reading it through AJAX is a way to elimnate the need to refresh a page for content. I currently use this for a few things at work. This can be used for many situations, such as reading IOT device details to a webpage, or to allow for more control of dynamic updates to a site.
This is not a calendar I created, it is generously available through the website here. What I had added was an interface that runs when the user goes to the calendar site. This interface pulls information from a remote database and writes it to a file in JSON format for the calendar to interpret and display.