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

ÃÛÌÒapp

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); })(); Tickets - Commencement | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Tickets

Graduates can order guest tickets, or make changes to an existing order, through the Commencement Checklist until the deadline of April 22, 2025 at 11:59 p.m. ET. A link to the checklist has been included in the last few emails sent by the Commencement committee. Search your ÃÛÌÒapp email for: Getting Ready to Graduate to find them.

All tickets are general admission. Accessible seating is available upon request through the order form. Get more information on parking, seating, and accommodations.

4

Van Nord Area Tickets

Each graduate can order four guest tickets for the ceremony in Van Noord Arena.
8

Overflow tickets

Each graduate can order up to 8 guest tickets for the Covenant Fine Arts Center (CFAC) on campus, where the ceremony will be broadcast live.
April 22

Deadline to order

Graduates will use the Commencement Checklist to order tickets or change an existing order. Deadline to order is April 22, 2025

Need additional tickets?

Graduates can network with classmates to find friends who have tickets to share or who need tickets. ÃÛÌÒapp will not be re-distributing tickets. 

It is illegal to sell tickets above the purchase price (which is $0). 

Remember, graduates can order up to 8 tickets in the CFAC overflow venue.

Questions?

For questions about tickets or anything else, email the Commencement Committee at commencement@calvin.edu.