BOULDER EVENTS CALENDAR
Source files, Studio Parkside


WHAT IS IN HERE

index.html    The whole page. One file.


HOW TO PUT IT LIVE

Upload index.html to the root of the domain. That is the entire
deployment. The page is self-contained: the styles, the layout code,
the arrow mark, and the fallback photograph are all inside that one
file. There is nothing else to upload and nothing to install.


THE EVENT FEED

The page reads the Boulder County Arts Alliance calendar API at
https://www.bouldercountyarts.org/api/events every time someone loads
it. No events are stored in the page.

A browser will only let a page read data from another website when
that website says it is allowed, using a response header called
Access-Control-Allow-Origin. Marty added that header to the
/api/events response on August 27, 2026, so the feed can be read from
any domain. No further setup is needed and nothing has to be requested
from BCAA.

If the calendar is ever unreachable, because of an outage or because
the file has been opened straight off a desktop with no connection,
the page falls back to a saved copy and prints "From a saved snapshot"
under the headline, so it is always obvious which one you are looking
at. The page will not break and it will not show an error.

If BCAA ever moves the API or closes the header again, the fix is one
line near the top of the script, the line beginning

    var API =

Send Michael the new address and he will make the change.


EVENT IMAGES

Each card shows the image attached to that listing in the BCAA
calendar, loaded from wherever BCAA hosts it. Listings with no image
get a photograph of Pearl Street, which is embedded in the page.


TYPEFACE

The page uses the reader's own system typeface. San Francisco on
iPhone, iPad, and Mac. Segoe UI on Windows. Roboto on Android. No font
files are loaded, nothing is licensed, and nothing can fail to
download.


QUESTIONS

Michael Benjamin
michael@studioparkside.co
