, but this code // executes before the first paint, when

ÇÑ×ÓÊÓÆµ

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Traditions - Alumni Association | ÇÑ×ÓÊÓÆµ

ÇÑ×ÓÊÓÆµ

Skip to main content

Traditions

From networking opportunities and regional gatherings to our signature annual events, the Calvin Alumni Association creates ways for you to connect throughout the year. Come back to campus for a host of activities during Homecoming & Family weekend, compete in the Calvin Classic, join a watch party for The Rivalry, and so much more!

Homecoming & Family Weekend

Homecoming

Save the date for Homecoming: September 26–27, 2025!

Calvin Classic 5k logo

Calvin Classic

Walk, run, or handcycle in our 5k and Fun Run, a tradition since 1992!

The rivalry logo, a mashup of ÇÑ×ÓÊÓÆµ and Hope College logos.

The Rivalry

The legendary rivalry between Calvin and Hope spans 104 years and 212 games.

Journalist Niala Boodhoo gives a lecture at the ÇÑ×ÓÊÓÆµ January Series.

January Series

Brilliant speakers, fascinating topics, enlightened conversation, and surprising discoveries.

Calvin President Elzinga poses with students in front of a Knights 4 Life sign at the grad celebration.

Knights for Life

K4L, the student chapter of the alumni association, provides opportunities for students to connect with and learn from alumni around the world. K4L sponsors memorable traditions like the Cold Knight Plunge, Professor of the Year, and Senior Celebration.

Class of 1975 ÇÑ×ÓÊÓÆµ graduates posed in front of a fireplace

50-Year Reunion

50-Year class reunions occur annually during commencement weekend. Next year, the Class of 1976 will celebrate their Calvin legacy on May 8–9, 2026!Â