, 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); })(); Visit Us - Bruce Dice Mineralogical Museum | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Visit Us

The museum is open most afternoons during the Fall and Spring semesters on days the university is not closed. It is also open at selected times during the summer. 

Hours

August 29-December 11 (except university holidays):

  • Monday-Thursday: 12-5 PM
  • Friday: 12-4 PM 

Tours

Informal tours are offered by student docents during all open hours or you can explore the collection on your own. 

Formal tours and educational lectures by faculty and/or staff are available by request. To arrange a formal tour or group visit, please call the museum at 616-526-8100 or email Kent Ratajeski (kent.ratajeski@calvin.edu).

Location

Physical Address

The museum is located in North Hall, which is part of the Science Building. Use this address to search our physical location on a map (embedded here) and drive to the nearest parking lot, but do not use it for exact walking directions.

North Hall 162
1740 Knollcrest Circle SE
Grand Rapids, MI 49546-4403

Parking and Walking Directions

Park in Lot 5 or  Lot 4.

From the parking lot, walk up the sidewalk and loop around the north end of North Hall.

Enter the main entrance to North Hall and walk down the hallway to the museum, room 162.

Contact

Phone: 616-526-8100

Kent Ratajeski

Kent Ratajeski

Lecturer, Bruce Dice Museum Director
(616) 526-6769