, 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); })(); Native Plant Sale Ecosystem Preserve | Â鶹Çø

Â鶹Çø

Skip to main content

Native Plant Sale

Image
Fall Native Plant Sale

2025 Spring Plant Sale Fest

Friday, May 16 | 6 - 8 PM  |  Using Native Plants in Your Landscape w/ Matt Dykstra

Join us for an interactive workshop with Managing Director Matt Dykstra. The program will cover why native plants are important and how to get started integrating them into your landscape. We have super fun perks for program participants:

  • shop the sale on Friday night
  • first plant is free
  • children's activities during workshop

More workshop details and registration link coming soon! 

Saturday, May 17 | 10 AM - 2 PM

Shop our plant sale! This is a family friendly event with on-site children's activities hosted by our environmental educators. We'll have food trucks and live music, too. Get plant-festive with us!

Can't make the sale? Our online native plant sale will open on May 23!

Join us in the greenhouse starting February 24: become a volunteer!

Stay in touch with us on and .

..................................................................................................................

View our Native Plant List & Cultural Guide for an idea of what products are available throughout the year. 

Native plants are flowers, grasses, trees and shrubs that have inhabited Michigan since before European settlement. Each year, we collect native seeds from West Michigan and propagate them in our greenhouses. The Native Plant Sale features more than 100 rare, unusual, and favorite varieties of native wildflowers, shrubs, and grasses for all growing conditions, including drought-tolerant, rain garden, and shade species.

When the online native plant sale is open, orders are fulfilled on Thursdays and available for pickup on Fridays from the glass house at 1750 East Beltline Ave. SE, Grand Rapids, MI 49546.

Proceeds benefit educational and stewardship programs at the preserve. Thank you for your support!

LEARN MORE

For additional species information and photos, visit these online databases:

  • (best plants for birds)