Busabase
Busabase is an open-source (MIT) database and workspace for AI agents — data, docs, skills, and apps in one place. Run it locally, self-host it inside your network, or use Busabase Cloud, and turn age
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Satellite explorers of Argentine river basins: Río Negro (8,016 river reaches, 25 sub-basins) and Córdoba. Next.js, MapLibre GL, PMTiles, DuckDB.
翻訳待ち
Loading the full README.
Read the full README ↗Live: https://basinexplorer.vercel.app/ (hub with two explorers: /rionegro and /cordoba)
An interactive satellite explorer of the Río Negro basin in northern Patagonia (Limay, Neuquén and Río Negro). The map shows only the river system and a strip of land around it. Click a river, a reach or a sub-basin to open a panel with its metrics. The UI is in English and Spanish. Inspired by Amazon Basin Explorer.
The same app serves more regions, one per path, sharing every component. The Río Negro basin
(nqn, at /rionegro) and Córdoba (cba, at /cordoba, covering the Primero to Quinto rivers
and Mar Chiquita) are both live (see regions/cba/README.md).
HYRIV_ID. Every
view can be shared by its URL.Modeled data. HydroATLAS values are modeled estimates, each for its own period. Discharge is a natural long-term average for 1971–2000 and does not reflect today's dam regulation. Population is a 2010 estimate (GPWv4). Flooded area comes from 1993–2004 satellite data (GIEMS-D15). Dam regulation is based on GRanD v1.1. The app states this wherever these values appear.
Sources (HydroSHEDS, HydroLAKES, GIRES, IGN, OSM)
│ pipeline/ — TS steps running DuckDB + tippecanoe, each writes a report.json
▼
public/tiles/<region>/*.pmtiles (geometry) data/out/<region>/*.ndjson → npm run seed → MongoDB Atlas (metadata)
│ HTTP Range │
▼ ▼
MapLibre GL in the browser ── click → feature id → /api/* route handlers (CDN-cached)
?r=<river>, ?reach=<HYRIV_ID>, ?s=<subbasin>).Next.js 16 (App Router) · React 19 · TypeScript (strict) · Tailwind CSS 4 · MapLibre GL + PMTiles · Zustand · next-intl · MongoDB Atlas · zod · DuckDB · tippecanoe · Vitest · Playwright · Vercel
Requires Node 24.
npm ci
cp .env.example .env.local # fill in MONGODB_URI, MONGODB_DB and the imagery variables
npm run seed -- --region nqn # loads data/out/<region>/*.ndjson into MongoDB (idempotent)
npm run dev
| Command | What it does |
|---|---|
npm run dev | Development server |
npm run check | Typecheck, lint, format check and unit tests |
npm run test:e2e | Playwright screenshot tests |
npm run pipeline:<step> -- --region <id> | One data pipeline step for one region (see pipeline/README.md) |
npm run seed -- --region <id> | Upserts a region's NDJSON outputs into MongoDB |
npm run atlas:check -- --region <id> | Verifies that the app's Mongo user can only read |
Rebuilding the data needs tippecanoe on your PATH. DuckDB is installed by npm ci. The full
pipeline order and its prerequisites are in pipeline/README.md.
app/[region]/ pages, /attributions, /api/{rivers,reaches,subbasins,search,health,ask} (one region per host, proxy.ts)
components/ map, panels, controls, search, mobile sheet
lib/ mongo.ts, data/ (schemas, queries), map/ (style, mask, minimap), store.ts, url-state.ts
messages/ shared en.json, es.json
regions/ region registry (index.ts, hosts.ts) and one folder per region: configs, messages/, content.ts
pipeline/ data pipeline steps, SOURCES.md
scripts/ seed, Atlas check, OG shapes
public/tiles/<region>/ PMTiles archives (committed)
Project docs: PLAN.md (phases and status) and DECISSIONS.md (dated decisions).
Data comes from HydroSHEDS (HydroRIVERS, RiverATLAS, HydroBASINS), HydroLAKES, GIRES, IGN
(Argentina) and OpenStreetMap. Satellite imagery is EOxCloudless 2024 (CC BY-NC-SA 4.0), so the
site is non-commercial. Full licenses and citations are in
pipeline/SOURCES.md and on the app's /attributions page.
This is the beginning of the README. Read the rest at the original. Read the full README ↗