ADVERTISEMENT

7 missing after explosion at California fireworks warehouse sets off massive blaze

Published Jul 3, 2025 10:28 am
ESPARTO, Calif. (AP) — Seven people were missing Wednesday following an explosion at a fireworks warehouse in rural Northern California that caused a massive fire that spread to farm fields and forced evacuations in the surrounding community, authorities said.
Smoke and flames rise during a fireworks warehouse explosion near Esparto, Calif., Tuesday, July 1, 2025. (Kent Porter/The Press Democrat via AP)
Smoke and flames rise during a fireworks warehouse explosion near Esparto, Calif., Tuesday, July 1, 2025. (Kent Porter/The Press Democrat via AP)
Two people were injured and received medical care, Esparto Fire Chief Curtis Lawrence said at a news conference Wednesday. Lawrence provided no further information other than to say the two were “OK,” and it wasn't known if the victims worked at the facility.
Emergency crews and investigators were working with the property’s owner and monitoring the area using drones to find the missing individuals, said the California Department of Forestry and Fire Protection. It was not immediately clear if those missing worked at the warehouse or lived nearby.
People were urged to avoid the area after the Tuesday night blast, which set off a barrage of fireworks and caused a blaze that led to other spot fires and collapsed the building near Esparto in Yolo County about 40 miles (64 kilometers) northwest of Sacramento.
The cause of the explosion was under investigation.
“The fire will take time to cool, and once it does, explosive experts must safely enter the site to assess and secure the area,” the Yolo County Sheriff's Office said in a statement late Tuesday.
Syanna Ruiz, 18, told the Sacramento Bee that her boyfriend, Jesus Ramos, and two of his brothers were missing. Tuesday was Ramos's first day on the job at the warehouse, she said.
“They were all three incredible men who had so much coming for them, that had so much coming their way,” Ruiz said. “I’m just praying to God that some way, somehow, they’re OK.
The fire was held at nearly 80 acres (33 hectares) after scorching surrounding agricultural fields, officials said.
The property is owned by an active pyrotechnic license holder,” Cal Fire said in a statement Wednesday. “This type of incident is very rare, as facilities like this are required to not only follow our stringent California pyrotechnic requirements, but also federal explosive storage requirements.”
The state fire marshal’s website listed the license for the facility as belonging to Blackstar Fireworks. The owner who was listed did not respond to an email from The Associated Press requesting comment.
Gov. Gavin Newsom's office said it was tracking what happened and that state ground and air resources were deployed.
“The State Fire Marshal has sent an arson and bomb investigation team, and stands ready to provide additional support as needed,” the governor's office said on the social site X.
Officials in nearby Sutter and Yuba counties announced Wednesday that they were exploring alternatives for Fourth of July celebrations after their fireworks were destroyed in the blast.

Related Tags

WORLDNEWS
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.