, 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); })(); Events Calendar | ÇÑ×ÓÊÓÆµ

ÇÑ×ÓÊÓÆµ

Skip to main content

Events Calendar

Apr 24, 2025

Calvin Cares

8:00 am–3:00 pm
DeVos Lobby Full
Apr 24, 2025

International Admitted Student Webinar

8:00 am–9:00 am
Our international admissions team is excited to host weekly webinars for admitted students to talk about the steps to complete the enrollment process. With time for questions!
Apr 24, 2025

TBD

9:50 am–10:10 am
Chapel Sanctuary
Apr 24, 2025

Preserve | Meet the Turtles!

11:00 am–11:30 am
Bunker Interpretive Center
Drop in to meet our slow-and-steady friends every Thursday in April.
Apr 24, 2025

Japanese Culture Session 13

4:00 pm–5:00 pm
Hiemenga Classroom 432
Apr 24, 2025

Spring Arts Festival

4:00 pm–8:00 pm
Spoelhof Center Coffee Shop Cafe (200)
Apr 24, 2025

Baseball vs Albion

4:00 pm–7:00 pm
Baseball Diamond
Apr 24, 2025

Ghana Winter Intensive Interest Meeting

4:00 pm–5:00 pm
Hiemenga Classroom 477
Apr 24, 2025

PDAC trivia night

4:30 pm–7:30 pm
Hiemenga Classroom 334
Apr 24, 2025

NSBE Awards & Dinner Night

5:00 pm–9:00 pm
Commons Annex Lecture Hall
Apr 24, 2025

Women in Stem Faculty and Alumni Q&A

6:30 pm–7:30 pm
Hekman Collab Space 102
Apr 24, 2025

AI, Consciousness, and Culture

7:00 pm–8:30 pm
Covenant Fine Arts Recital Hall
Apr 24, 2025

Women's Lacrosse vs Hope

7:00 pm–9:00 pm
Zuidema Soccer Field
Apr 24, 2025

Symphonic Band Concert

7:30 pm–9:00 pm
Covenant Fine Arts Center Auditorium
FREE