Flask • API-first • Dataverse-backed

Overlay ADCP data on interactive maps—fast.

An API-based web app that streams ADCP-derived products (transects, vectors, profiles) and overlays them directly on a map. Data is sourced from the Harvard Dataverse project.

ADCP
Transects & Velocities
Map
Vectors, heatmaps, layers
Source
Harvard Dataverse
Example API Calls
GET /api/v1/datasets
GET /api/v1/datasets/{id}/tracks.geojson
GET /api/v1/datasets/{id}/vectors.geojson
GET /api/v1/datasets/{id}/metadata
Tip: return GeoJSON for map layers and keep clients thin.

What this platform does

Turn raw ADCP files and Dataverse records into map-ready layers with minimal friction.

🗺️

Map-first overlays

Render transects, station points, and velocity vectors as layers. Designed for Leaflet/Mapbox clients.

📦

Dataverse ingestion

Pull dataset metadata and files from Harvard Dataverse. Cache what you need, keep provenance intact.

API-driven products

Serve GeoJSON and derived summaries. Build repeatable outputs (vectors, bins, depth slices) from a consistent API.

Operational basics

Practical defaults so you can ship without regrets.

Performance

  • Cache Dataverse responses and derived layers
  • Precompute vector tiles or simplified GeoJSON for large tracks
  • Paginate datasets and time ranges

Security

  • Read-only endpoints for public datasets
  • API keys for private datasets / rate limiting
  • Strict CORS policy for the front-end origin