, 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 聽| 聽Every Yard a Refuge

Our yards can serve as an important refuge for native plants and the wildlife that depend on them. Matt Dykstra, Managing Director of Calvin Ecosystem Preserve and Native Gardens, will provide an introduction to native plant gardening.聽

The program will cover why native gardens are important, how to establishing a garden at your home, and common challenges that new native plant gardeners encounter. The program will include a tour of the plants available for sale. Participants can select any one perennial plant to take home as part of the program, and will be able to purchase other plants ahead of the main sale on Saturday. Children's activities are offered during the workshop.

Limit 25 participants
Cost: $20

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 a food truck 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. (The updated 2025 guide will be available on 5/9.)

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)