Skip to contents

Versioning

Resolve which MST release to render, on which cell grid, and where its content-addressed COGs live — the registries that let ONE app serve every version instead of a forked app per release

atlas_base_url()
Base HTTPS URL of the marine-atlas release tree
atlas_latest()
The promoted (latest released) atlas version
atlas_manifest()
A version's manifest — the contract between a release and the apps
atlas_resolve_ver()
Resolve a requested version to a real, published one
atlas_versions()
The atlas version registry
manifest_build()
Build a version manifest from that release's database
manifest_can()
Does this version support a named capability?
validate_manifest()
Validate a version manifest
version_picker_html()
HTML for the version picker
cell_from_lonlat()
Cell id at a longitude/latitude (inverse of cell_lonlat())
cell_lonlat()
Longitude/latitude of cell centers on a grid
grid_cellid_url()
Public URL of a grid's cell-id COG
grid_for_ver()
The grid a release's cell_id values index
grid_registry()
The grid registry
grid_spec_for()
Grid spec by id, for publish_cog()
cog_store_index()
Index the existing COG store
content_hash_encoded()
Fold the raster ENCODING into a payload hash
content_hash_sql()
Grouped content-fingerprint SQL
content_hashes()
Content fingerprint of every model in a surface table
content_key()
Object key for a content-addressed COG
content_url()
Public URL of a stored COG

Spatial units

Identify a zone layer by its geometry rather than by the release that used it, so one Program Area is comparable across versions

validate_zone_sets()
Validate a zone-set registry table
zone_cells()
Cells covered by each zone, on a given grid
zone_geom_hash()
Order-invariant geometry fingerprint of a zone layer
zone_key_col()
The key column for a zone type
zone_set_group()
Group zone layers into distinct vintages by geometry
zone_set_key()
Compose (and validate) a zone-set key
zone_set_resolve()
Resolve a release's zone columns to zone-set keys via the registry

Atlas & database

Attach the released marine-atlas Parquet on S3, and open a version’s DuckDB

atlas_path()
Path to a release component under the atlas base
atlas_tbl()
Read a released derived table (tables/<name>.parquet) as a lazy relation
atlas_views()
Create named views over the released atlas tables
attach_atlas()
Configure a DuckDB connection to read the marine-atlas release from S3
require_duckdb()
Require a modern DuckDB (and optionally the spatial GEOMETRY extension)
sdm_db_con()
Connect to SDM DuckDB
sdm_db_path()
Path to SDM DuckDB
spp_db_con()
Connect to species taxonomy DuckDB

Ingest & merge

Bring source distributions onto the cell grid, mint stable model ids, and merge per-dataset surfaces into one surface per taxon

cells_from_ranges()
Rasterize range polygons onto the global 0.05° cell grid (whole range)
cells_from_raster()
Resample a raster SDM onto the global 0.05° cell grid
cells_pct_marine()
Percent of a model's cells that are marine (ocean)
merge_sql()
v8 per-taxon merge rules (single source of truth)
turtle_sql()
Turtle multiplicative merge rule
mdl_key_merged()
Compose a merged (ms_merge) model key
mdl_key_parse()
Parse mdl_key(s) into components
mdl_key_raw()
Compose a raw (per-dataset) model key
normalize_ds_key()
Normalise a legacy dataset key to the mdl_key grammar

Taxonomic

Match taxa from APIs, especially World Register of Marine Species (WoRMS)

clean_sci_name()
Clean a scientific name for taxonomic matching
match_taxa()
Match taxa to spp.duckdb via cascade
wm_rest()
Query WoRMS REST API with multiple requests
compute_er_score()
Compute extinction risk score from extrisk_code and flags
parse_noaa_status()
Parse NOAA protected_status field

Analyze

Score cells and zones, and summarize species for an area

build_zone_taxon()
Build the precomputed zone x taxon summary table
cell_grid_ncol()
Grid width (columns) a database's cell_model was tiled with
cell_id_raster()
Cell-ID SpatRaster (the v7 grid)
cell_model_tile_sql()
SQL expression for a cell's spatial tile id
cell_model_tiles()
Spatial tile ids covering a set of cells
cells_in_polygon()
Cells intersecting a polygon
cells_in_pra()
Cells belonging to a Program Area zone
mean_score()
Weighted mean of component scores
scores_for_cells()
Aggregate component scores across a set of cells
scores_for_pra()
Precomputed component scores for a Program Area
species_for_cells()
Species table aggregated across a set of cells
species_for_zone()
Species table aggregated across a zone

Visualize

Map cell surfaces and COGs, and build the report widgets

add_cell_tiles()
Add an msens cell tile layer to a mapgl map
add_cells()
Add a raster cell layer to a map
add_pmfill()
Add a PMTile polygon fill layer to a map
add_pmlabel()
Add symbol label layers from sf point data
add_pmline()
Add PMTile outline line layers to a map
cell_stats()
Fetch msens cell value statistics for a SQL query
cell_tile_url()
Build an msens cell tile URL template
cog_point_value()
Value of a COG at a point, via titiler
cog_tile_url()
Build a titiler /cog tile URL template for a native COG
drawn_features_sf()
Parse mapgl's drawn-features Shiny input into sf
ggmap_areas()
Static ggplot map of labeled areas
ggplot_flower()
Build a flower-plot ggplot for component scores
map_cells()
Map raster cells with outlines and labels
map_pmtiles()
Map data on PMTile vector tiles
ms_basemap()
Basemap
plot_flower()
Flower plot of component scores (interactive or static)
tbl_species()
Species table (interactive DT or static gt)
widget_png()
Render an htmlwidget to a static PNG

Publish & serve

Write COGs and PMTiles, build the STAC catalog, render reports

grid_spec()
Grid spec for the global cell-id raster
publish_cog()
Publish one model's cells as a COG
publish_pmtiles()
Publish vector features as PMTiles (tippecanoe)
publish_pmtiles_from_gpkg()
Publish per-model PMTiles from an indexed GeoPackage
publish_pmtiles_models()
Publish per-model PMTiles — one file per mdl_key
sdm_sql_b64()
Encode SQL as urlsafe base64 for the TiTiler sql= query parameter
stac_build()
Build the full static STAC catalog for a version
stac_cfg()
Default configuration (base URLs) for STAC generation
stac_dataset_collection()
Dataset Collection node
stac_model_cell_item()
Model-surface Item for a (DuckDB-backed) dataset
stac_root_catalog()
Root Catalog node
stac_sdm_props()
Build the SDM properties block shared by Collections and Items
stac_season_cog_item()
Seasonal per-species Item from the NCCOS season-COG metadata
stac_version_collection()
Version Collection node (parent of the dataset Collections)
report_parquet_summary()
Summarize a set of atlas Parquet files for a notebook's ## Outputs section
report_table()
House-style table for pipeline reports

Pipeline

The targets DAG, content-addressed target manifests, Parquet staging and the version-equivalence gate

build_targets_list()
Build the targets list from msens: frontmatter
parse_qmd_frontmatter()
Parse msens: frontmatter from pipeline notebooks
force_target()
Should this target be forced to rebuild?
hash_parquet()
Order-independent content fingerprint of Parquet file(s)
hash_query()
Order-independent content fingerprint of a DuckDB table/query
write_manifest()
Write a deterministic, content-addressed target manifest
copy_atlas_parquet()
COPY a DuckDB relation/query to Parquet with the standard v8 options
write_atlas_parquet()
Write an atlas surface to Parquet (arrow path) with the standard v8 options
assert_within_tolerance()
Assert a delta table is within tolerance, else error (pure)
mass_conservation()
Mass-conservation ratio between a source model and its hex interpolation (pure)
pra_score_delta()
Program-Area composite-score delta between two version databases
rarity_class()
Rarity class from range size (pure)
score_delta()
Join two versions' scores and compute per-key deltas (pure)
score_delta_summary()
Summary statistics for a delta table (pure)

Read

Fetch data, spatial and non-spatial, especially from APIs

get_species_by_feature()
Get species by feature

Analytics

Usage logging shared across the apps, docs and workflows sites

ga_head()
Analytics <head> snippet as a Shiny tag
ga_js()
Analytics <head> snippet (GA4 + batched Sheet beacon)
ms_apps_script()
Apps Script source for the usage-log Sheet
ms_client_ip()
Best-effort client IP from a Shiny request
ms_event()
Build a tracking-event payload
ms_log_header()
Column header for the usage-log Sheet
ms_track()
Send a tracking event from the Shiny server to the browser
ms_track_query()
Time a query, log its shape, and re-raise any error
ms_track_session()
Hand the browser the session facts only the server knows

Data

Lookups for easy reference

ply_boemrgns
Polygons of BOEM Regions
ply_boemrgns_s05
Polygons of BOEM Regions, simplified to 5%
ply_ecoareas
Polygons of EcoAreas
ply_ecoareas_s05
Polygons of EcoAreas
ply_ecorgns
Polygons of Ecoregions
ply_ecorgns_s05
Polygons of Ecoregions
ply_planareas
Polygons of Planning Areas
ply_planareas_s05
Polygons of Planning Areas, simplified to 5%

Dormant

Retained but NOT part of the current pipeline. The H3 hexagon grid and its IDW interpolation were built for a v8 direction that was rolled back to the global 0.05 degree raster cell grid; nothing in workflows or apps calls them, and their SQL is stale under DuckDB 1.5 (their tests skip). Kept for a possible return to hexes — do not build on them without re-testing.

HEX_RES
H3 resolution of the v8 sampling grid (~5.16 km^2 per hexagon)
cell_i_grid()
Canonical global 0.5-degree cell index for lon/lat
hex_add_membership()
Flag hexes inside a polygon (H3 polyfill membership)
hex_centroids()
Centroids (lon/lat) for BIGINT H3 ids
hex_grid_weights()
Precompute IDW weights from a shared source grid to hex centroids
hex_id_from_lonlat()
H3 cell ids for lon/lat points
hex_id_to_string()
Hex-string form of BIGINT H3 ids (for display)
hex_interp_idw()
Interpolate source values onto hex centroids (inverse-distance weighting)
hex_ocean()
Enumerate the ocean H3 hex tiling from a raster mask (GEOMETRY ONLY)
model_hex_from_weights()
Interpolate one model's source values onto hexes with precomputed weights

Other

Other functions not defined by the concepts above

HEX_RES
H3 resolution of the v8 sampling grid (~5.16 km^2 per hexagon)
build_storage_index()
Generate index pages for a bucket tree
hex_add_membership()
Flag hexes inside a polygon (H3 polyfill membership)
hex_centroids()
Centroids (lon/lat) for BIGINT H3 ids
hex_id_from_lonlat()
H3 cell ids for lon/lat points
hex_id_to_string()
Hex-string form of BIGINT H3 ids (for display)
hex_interp_idw()
Interpolate source values onto hex centroids (inverse-distance weighting)
hex_ocean()
Enumerate the ocean H3 hex tiling from a raster mask (GEOMETRY ONLY)
s3_list_all()
List every object under a prefix
storage_page()
One self-contained storage index page