before exists. document.addEventListener('htmx:afterRequest', function(evt) { if (!evt.detail || !evt.detail.successful) return; var refresh = document.getElementById('maincontent-refresh'); if (!refresh) return; refresh.classList.remove('gio-fade-in'); // force reflow so removing then adding re-starts the animation each time void refresh.offsetWidth; refresh.classList.add('gio-fade-in'); }); // Top-of-viewport progress bar shown while an HTMX request is in flight. // Provides immediate visual feedback for taps even before content arrives. document.addEventListener('htmx:beforeRequest', function() { var bar = document.getElementById('gio-progress-bar'); if (bar) bar.classList.add('active'); }); document.addEventListener('htmx:afterRequest', function() { var bar = document.getElementById('gio-progress-bar'); if (bar) bar.classList.remove('active'); }); // Haptic feedback on mobile-native chrome taps: bottom-nav tabs, back // chevron, and the navbar overflow action slot. Uses the shared helpers // from qtutils/appfunctions.qtpl — they no-op on non-Capacitor runtimes, // so this is safe on the plain web too. document.addEventListener('click', function(ev) { if (typeof hapticsSelectionChanged !== 'function') return; var target = ev.target; if (!target || !target.closest) return; if (target.closest('.mobilesidebar-item') || target.closest('#logo a') || target.closest('#header-action-slot a')) { hapticsSelectionChanged(); } }, true);

Groups.io AI Crawler Policy

You are seeing this page because your system has been identified as an AI crawler accessing Groups.io.

Groups.io does not permit unlicensed AI crawlers to access, scrape, or index our content. Our data represents the work and collaboration of millions of people, and we are committed to protecting the integrity and privacy of our communities.

In addition to safeguarding our members' data, we actively protect our infrastructure and compute resources from unauthorized use and excessive load caused by unapproved automated systems.

Only public group archives are available for licensing. Private archives and other data are never available for licensing under any circumstances.

Groups.io has a unique, high-signal text data source that could be a significant asset for training your next generation of models.

Here's a snapshot of our data:

Unlike scraped data, we can offer a clean, commercially licensed, and structured data feed tailored for AI training, with PII rigorously removed and a clear opt-in framework for our public communities. The fact that we constantly fight off scrapers is the clearest signal we have of the demand for this content.

If you want to license public Groups.io data for AI training or other purposes, please contact us at:

ai@groups.io

We are open to responsible partnerships and will be happy to discuss licensing terms.

Unauthorized crawling is strictly prohibited.