One pipeline: map a site → extract dive sites with AI → review. Writes directly to dive_sites + species links.
Paste a Google My Maps URL (or just its mid). We fetch the public KML, parse every placemark, and upsert into dive_sites with real GPS coordinates. Existing sites get their lat/lng backfilled — they're not overwritten.
Pulls the public dive-site KML at scubaboard.com/divesites/map/kml.php?area={ISO} for any 2-letter country code (HN, MX, EG, ID…). Names, GPS, and site type (reef / wreck / cave) are imported. Existing sites get backfilled, never overwritten. Data © ScubaCenter contributors, CC-BY-SA 2.0 — keep attribution wherever this is shown publicly.
Firecrawl crawls the domain and returns every URL ranked by relevance to your keyword. Pick a seed below or paste your own, then click Map. You'll send the result to Step 2.
Bulk-scrapes the 6 Roatán sources not yet in raw_scraped_sites via bulkScrapeUrls with auto_extract: true → writes dive-site candidates straight to dive_sites (destination: roatan).
Paste up to 50 URLs. The app sends them in safe 10-URL batches, then Firecrawl scrapes each page and extracts named dive sites + species. Writes directly to dive_sites (new) or patches existing rows.
0 valid URLs detected
Separate workflow for dive shops. (a) Discover PADI shop URLs → (b) bulk-scrape each shop page → (c) extract fields → (d) click Create operator on each staged row below. Use slug roatan-utila, not roatan.
Raw scrapes that matched one or more existing dive sites. Pick the correct match to merge (aliases + missing fields), or reject all to promote as a new site.
History of every scrape + extract job. Click Create operator on PADI rows to publish.