91³Ô¹ÏÍø

Watch CBS News

Local Leaf, specializing in hydroponic microgreens, set to open this month in North Shore

It's the turn of the new year and a time when many people resolve to be healthier.

A new kind of business in the North Shore is keeping that at heart, designed to connect people with their food, coming from a farm, in an unlikely place.

There's a farm in downtown Highland Park.

"Environmentally, we can control all of the conditions," said tour guide Daniel Cohen. "We control the temperature of the environment, the windspeed across the plants, the humidity in the space."

Welcome to .

"We are an indoor hydroponic microgreen — lettuce, spinach, and edible flower farm," said co-owner Stefanie Cohen."We do everything here from seeding, germinating, harvesting, packing right to you." 

Stefanie and Daniel opened Local Leaf recently. The front is for retail, but behind it is the growing room and the germinating room, where seeds are planted and first sprout.

Daniel, a mechanical engineer, got the idea years ago after designing facilities to grow cannabis. He met many farmers and learned about food. 

"Loved the experience of seeing how food grows, where it can come from. There's a real connection that I got from literally watching food grow," he said.

And connecting to food is the point.

"Everything that goes in your body matters, and you should start to wonder and question what you're, eating, where it's coming from, how many hands have touched it. How long has it been on that truck? Those are things that we want people to start to wonder and believe it could be a different way," Stefanie said.

Both said how we use empty space can be different, too — space left vacant by COVID-19.

"It just didn't make sense to me that we were shipping food in from California and Florida after watching wildfires roar and heaing about their droughts, and all the other issues, when we have all this empty space," Daniel said.

Empty space that's now being used to grow food.

"Anyone who cares about themselves and their health and wellness is a customer to us," Steffanie said.

Local Leaf is in the middle of its soft launch. A Grand Opening is planned for Jan. 15.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });