-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocs.html
More file actions
363 lines (334 loc) · 24.3 KB
/
Copy pathdocs.html
File metadata and controls
363 lines (334 loc) · 24.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>About — State Wildlife Action Plans Explorer</title>
<style>
:root {
--ink: #1a2e1f;
--ink-soft: #4a5d51;
--paper: #fafaf7;
--rule: #e0e2dc;
--accent: #2e7d32;
--accent-dark: #1b5e20;
--accent-soft: #e8f1ea;
--link: #1565c0;
--max: 880px;
}
* { box-sizing: border-box; }
html, body {
margin: 0;
padding: 0;
background: var(--paper);
color: var(--ink);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
font-size: 16px;
line-height: 1.6;
}
a { color: var(--link); text-decoration: none; }
a:hover { text-decoration: underline; }
header.hero {
background: linear-gradient(135deg, var(--accent-dark) 0%, var(--accent) 100%);
color: #fff;
padding: 3.5rem 1.5rem 2.5rem;
border-bottom: 1px solid var(--rule);
}
.hero-inner { max-width: var(--max); margin: 0 auto; }
.hero h1 {
font-size: 2.1rem;
margin: 0 0 0.4rem 0;
font-weight: 600;
letter-spacing: -0.02em;
}
.hero .tag {
font-size: 1.05rem;
opacity: 0.92;
margin: 0 0 1.4rem 0;
max-width: 62ch;
}
.hero .cta {
display: inline-block;
background: rgba(255,255,255,0.15);
color: #fff;
padding: 0.55rem 1.1rem;
border-radius: 6px;
border: 1px solid rgba(255,255,255,0.35);
font-weight: 500;
transition: background 0.15s;
}
.hero .cta:hover { background: rgba(255,255,255,0.28); text-decoration: none; }
.hero .badge {
display: inline-block;
margin-left: 0.6rem;
padding: 0.18rem 0.55rem;
border-radius: 999px;
background: rgba(255,255,255,0.18);
font-size: 0.8rem;
font-weight: 500;
letter-spacing: 0.02em;
vertical-align: middle;
}
main { max-width: var(--max); margin: 0 auto; padding: 2.5rem 1.5rem 4rem; }
section { margin-bottom: 2.8rem; }
h2 {
font-size: 1.45rem;
color: var(--accent-dark);
border-bottom: 2px solid var(--accent-soft);
padding-bottom: 0.4rem;
margin: 0 0 1rem 0;
font-weight: 600;
}
h3 { font-size: 1.12rem; color: var(--ink); margin: 1.4rem 0 0.5rem 0; font-weight: 600; }
p { margin: 0.5rem 0 0.9rem; }
p.lede { font-size: 1.05rem; color: var(--ink-soft); }
.cmp-wrap { overflow-x: auto; margin: 1rem 0; }
table.cmp {
border-collapse: collapse;
width: 100%;
min-width: 640px;
font-size: 0.92rem;
background: #fff;
border: 1px solid var(--rule);
border-radius: 8px;
overflow: hidden;
}
table.cmp th, table.cmp td {
text-align: left;
padding: 0.6rem 0.8rem;
border-bottom: 1px solid var(--rule);
vertical-align: top;
}
table.cmp thead th {
background: var(--accent-soft);
color: var(--accent-dark);
font-weight: 600;
}
table.cmp tbody th { font-weight: 600; color: var(--ink); background: #f6f7f4; white-space: nowrap; }
table.cmp tr:last-child td, table.cmp tr:last-child th { border-bottom: 0; }
.layer-group {
background: #fff;
border: 1px solid var(--rule);
border-radius: 8px;
padding: 1rem 1.25rem;
margin: 0.9rem 0;
}
.layer-group h3 { margin-top: 0; color: var(--accent-dark); display: flex; align-items: center; gap: 0.5rem; }
.layer-group h3::before {
content: "";
display: inline-block;
width: 4px;
height: 1.1em;
background: var(--accent);
border-radius: 2px;
}
.layer-group .grp-note { color: var(--ink-soft); font-size: 0.9rem; margin: 0 0 0.6rem; }
.layer { padding: 0.55rem 0; border-top: 1px solid var(--rule); }
.layer:first-of-type { border-top: 0; padding-top: 0; }
.layer .name { font-weight: 600; color: var(--ink); }
.layer .name .pill {
display: inline-block;
margin-left: 0.5rem;
padding: 0.05rem 0.45rem;
border-radius: 999px;
background: var(--accent-soft);
color: var(--accent-dark);
font-size: 0.72rem;
font-weight: 600;
letter-spacing: 0.02em;
vertical-align: middle;
}
.layer .name .pill.sql { background: #e6eef7; color: #1565c0; }
.layer .source { color: var(--ink-soft); font-size: 0.93rem; margin: 0.1rem 0 0.15rem; }
.layer .links { font-size: 0.88rem; }
.layer .links a { margin-right: 0.9rem; }
.callout {
background: var(--accent-soft);
border-left: 3px solid var(--accent);
padding: 0.9rem 1.1rem;
border-radius: 0 6px 6px 0;
margin: 1rem 0;
font-size: 0.97rem;
}
.foot {
text-align: center;
color: var(--ink-soft);
font-size: 0.88rem;
margin-top: 3rem;
padding-top: 1.5rem;
border-top: 1px solid var(--rule);
}
.foot .partners {
display: flex;
justify-content: center;
gap: 1.8rem;
flex-wrap: wrap;
margin: 0.6rem 0 1rem;
font-weight: 500;
color: var(--ink);
}
@media (max-width: 600px) {
.hero h1 { font-size: 1.6rem; }
main { padding: 1.5rem 1rem 3rem; }
h2 { font-size: 1.2rem; }
}
</style>
</head>
<body>
<header class="hero">
<div class="hero-inner">
<h1>State Wildlife Action Plans Explorer
<span class="badge">work in progress</span>
</h1>
<p class="tag">An interactive map and AI assistant for comparing how different U.S. states plan for wildlife conservation — starting with California, Nevada, and Missouri. Each state's plan is kept in its own native structure, so you can see just how differently states approach the same mandate.</p>
<a href="/" class="cta">← Open the App</a>
</div>
</header>
<main>
<section>
<h2>About this project</h2>
<p class="lede">A platform from the <a href="https://boettigerlab.berkeley.edu" target="_blank" rel="noopener">Boettiger Lab</a> in the <a href="https://espm.berkeley.edu" target="_blank" rel="noopener">Department of Environmental Science, Policy, and Management at UC Berkeley</a> for exploring State Wildlife Action Plans as cloud-native, queryable geospatial data.</p>
<p>Every U.S. state maintains a <strong>State Wildlife Action Plan (SWAP)</strong> — a conservation blueprint that identifies the species and habitats most in need of attention and the actions to sustain them — as a condition of federal wildlife funding. But the plans are authored independently, and they look nothing alike: different geographies, different species treatments, different vocabulary, even different names. This app brings several of them into one place <em>without flattening those differences</em>. Each state's layers stay distinct and are labeled by state, so a question like "how does California's approach compare to Missouri's?" becomes something you can actually see on the map.</p>
<p>This is a <strong>work in progress</strong>. States, layers, models, and capabilities are being added and refined.</p>
</section>
<section>
<h2>Three states, three very different plans</h2>
<p>The clearest way to appreciate the diversity is side by side. These three plans share almost none of their structure — which is exactly why each is kept separate in the app rather than merged into a single schema.</p>
<div class="cmp-wrap">
<table class="cmp">
<thead>
<tr><th> </th><th>California</th><th>Nevada</th><th>Missouri</th></tr>
</thead>
<tbody>
<tr><th>Plan</th><td>SWAP 2025 (CDFW)</td><td>SWAP 2022 (NDOW)</td><td>CCS 2022 (MDC) — a <em>Comprehensive Conservation Strategy</em>, not called a "SWAP"</td></tr>
<tr><th>Model</th><td>Rich <strong>relational</strong> plan</td><td>Flat, <strong>species-centric</strong></td><td><strong>Habitat / place</strong> only</td></tr>
<tr><th>Conservation geography</th><td>8 provinces → 46 conservation units; marine bioregions; salmonid ESU/DPS; Bay-Delta unit</td><td>17 statewide Key Habitat classes</td><td>7 habitat-system Conservation Opportunity Areas + 11 Priority Geographies</td></tr>
<tr><th>Species</th><td>SGCN list (1,437) + range polygons (422) + species × unit crosswalk (4,268)</td><td>258 species-distribution polygons</td><td><em>none</em> — no species data in the plan</td></tr>
<tr><th>Planning tables</th><td>Conservation Targets (460) & Strategies (525)</td><td>—</td><td>—</td></tr>
<tr><th>Taxon grouping</th><td>7 groups (Amphibians, Birds, Fish, Invertebrates, Mammals, Plants, Reptiles)</td><td>4 groups (Bird, Reptile, Mammal, Aquatic)</td><td>—</td></tr>
</tbody>
</table>
</div>
<div class="callout">
<strong>Compare them yourself.</strong> The plans do not share a common species key or habitat classification, so cross-state comparison is done explicitly — ask the assistant for, say, "California SGCN species" and "Nevada species distributions" and line them up. Missouri intentionally has no species layer to compare; its plan works entirely through habitat and place.
</div>
</section>
<section>
<h2>How it works</h2>
<p>The map renders open geospatial datasets directly from cloud-native formats (PMTiles vector tiles, Cloud-Optimized GeoTIFFs, and GeoParquet) hosted on the <a href="https://nrp.ai" target="_blank" rel="noopener">National Research Platform</a>. No tile server is involved — your browser fetches only the bytes it needs to render the current view.</p>
<p>The AI assistant translates plain-English questions into SQL using <a href="https://duckdb.org" target="_blank" rel="noopener">DuckDB</a> over the same Parquet files, with column schemas and dataset descriptions discovered automatically through a <a href="https://stacspec.org" target="_blank" rel="noopener">SpatioTemporal Asset Catalog (STAC)</a>. This is how it can answer questions about California's SGCN species list, targets, and strategies — planning tables that have no map geometry of their own.</p>
<div class="callout">
<strong>Low-carbon, open models.</strong> The assistant is powered by open-weight large language models (GLM, Qwen3, GPT-OSS 120B, Kimi K2, MiniMax) running on the <strong>NRP open-llm-proxy</strong>, a shared university inference service running on hardware powered substantially by renewable energy. Compared to large commercial inference services, this reduces both the energy and the data-privacy footprint of every conversation. Carbon and energy use are tracked on our companion <a href="https://carbon-dashboard.nrp-nautilus.io" target="_blank" rel="noopener">sustainability dashboard</a>.
</div>
<p>The full agent stack — map, chat, MCP tool server, and STAC catalog — is open-source. See the <a href="https://github.com/boettiger-lab/swap" target="_blank" rel="noopener">project repository</a> and the <a href="https://github.com/boettiger-lab/geo-agent" target="_blank" rel="noopener">geo-agent core library</a>.</p>
</section>
<section>
<h2>Working with the Data Assistant</h2>
<div class="callout">
<strong>If you wish the app could do something — just ask the assistant.</strong> Things people often reach for a settings menu to do (adjust transparency, export a CSV, filter a layer, run a cross-dataset query) the assistant can already do in plain language. If it can't, it will say so and usually suggest the closest thing it can.
</div>
<p>A few of the actions people most often ask for:</p>
<ul>
<li><strong>Compare states:</strong> <em>"Show California's SWAP provinces and Nevada's key habitats"</em>, <em>"How do California, Nevada, and Missouri each define conservation geographies?"</em></li>
<li><strong>Adjust styling and transparency:</strong> <em>"Make Missouri's forest COAs 40% transparent"</em>, <em>"Color the California SGCN ranges by taxonomic group."</em></li>
<li><strong>Show, hide, or filter layers:</strong> <em>"Turn on Nevada species distributions and hide California"</em>, <em>"Show only bird ranges in Nevada."</em></li>
<li><strong>Zoom and pan:</strong> <em>"Zoom to Missouri"</em>, <em>"Center on the California South Coast province."</em></li>
<li><strong>Query & combine:</strong> <em>"How many SGCN species by taxonomic group in California vs Nevada?"</em>, <em>"Overlay PAD-US GAP 1–2 lands on California's SGCN ranges."</em></li>
</ul>
<p>A few interface tips that aren't visually obvious:</p>
<ul>
<li>The Data Assistant panel is <strong>resizable</strong> — drag its left edge; the header button <strong>minimizes</strong> it, and a floating button restores it.</li>
<li>On phones and tablets, the panel auto-collapses to overlay mode so the full map stays visible.</li>
<li><strong>Hover</strong> over any feature for a tooltip of its live attributes — names, classes, IDs — direct from the source data.</li>
<li>Every tool call the assistant runs is logged in the per-turn timeline, with timings, so you can see what it queried and what came back.</li>
</ul>
</section>
<section>
<h2>Data layers & sources</h2>
<p>Each state plan is a public release from its wildlife agency, reprocessed into cloud-native formats by the Boettiger Lab. Click "STAC" beside any entry for the full machine-readable metadata — schemas, column descriptions, license, and download URLs. Entries marked <span class="pill sql" style="font-size:0.72rem;padding:0.05rem 0.45rem;border-radius:999px;">SQL</span> are tabular planning data the assistant can query but that are not drawn as map layers.</p>
<div class="layer-group">
<h3>California — SWAP 2025 (CDFW)</h3>
<p class="grp-note">A nested, relational plan: regions, species, and planning tables. Data © California Department of Fish and Wildlife, CC-BY-4.0.</p>
<div class="layer">
<div class="name">Provinces & Conservation Units <span class="pill">8 + 46</span></div>
<div class="source">Eight statewide provinces subdivided into 46 conservation units (terrestrial, freshwater, marine, anadromous), plus marine bioregions, NOAA salmonid ESU/DPS units, and the Bay-Delta unit.</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/california/swap-2025/provinces/stac-collection.json" target="_blank" rel="noopener">STAC: Provinces</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/california/swap-2025/conservation-units/stac-collection.json" target="_blank" rel="noopener">STAC: Units</a><a href="https://wildlife.ca.gov/SWAP" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">SGCN Species & Ranges <span class="pill">1,437 species · 422 ranges</span></div>
<div class="source">Species of Greatest Conservation Need across all seven taxonomic groups (only the five vertebrate groups have mapped ranges), with a species × conservation-unit crosswalk (4,268 rows).</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/california/swap-2025/sgcn-ranges/stac-collection.json" target="_blank" rel="noopener">STAC: Ranges</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/california/swap-2025/sgcn-species/stac-collection.json" target="_blank" rel="noopener">STAC: Species list</a><a href="https://wildlife.ca.gov/SWAP" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">Conservation Targets & Strategies <span class="pill">460 · 525</span> <span class="pill sql">SQL</span></div>
<div class="source">The habitat/species targets per conservation unit (typed Terrestrial / Freshwater Aquatic / Marine / Anadromous Species) and the conservation actions addressing each, grouped into eight strategy categories.</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/california/swap-2025/targets/stac-collection.json" target="_blank" rel="noopener">STAC: Targets</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/california/swap-2025/strategies/stac-collection.json" target="_blank" rel="noopener">STAC: Strategies</a><a href="https://wildlife.ca.gov/SWAP" target="_blank" rel="noopener">Source</a></div>
</div>
</div>
<div class="layer-group">
<h3>Nevada — SWAP 2022 (NDOW)</h3>
<p class="grp-note">A flat, species-centric plan: species ranges and habitat classes, no nested regions or planning tables. Data © Nevada Department of Wildlife (NDOW); redistribution license pending confirmation. Source: NDOW ArcGIS Data Hub.</p>
<div class="layer">
<div class="name">Species Distributions <span class="pill">258 features</span></div>
<div class="source">Per-species range polygons for Nevada's Species of Greatest Conservation Need, grouped as Bird, Reptile, Mammal, or Aquatic (fish and amphibians), with a seasonal occupancy attribute.</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/nevada/swap-2022/species-distributions/stac-collection.json" target="_blank" rel="noopener">STAC</a><a href="https://nevada-department-of-wildlife-data-hub-ndow.hub.arcgis.com/" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">Key Habitats <span class="pill">17 classes</span></div>
<div class="source">Seventeen statewide key-habitat classes — from Alpine and Tundra to Mojave Warm Desert to Salt Desert Shrub — the habitat framework Nevada's plan is organized around.</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/nevada/swap-2022/key-habitats/stac-collection.json" target="_blank" rel="noopener">STAC</a><a href="https://nevada-department-of-wildlife-data-hub-ndow.hub.arcgis.com/" target="_blank" rel="noopener">Source</a></div>
</div>
</div>
<div class="layer-group">
<h3>Missouri — CCS 2022 (MDC)</h3>
<p class="grp-note">A habitat/place-based plan with no species layer: Conservation Opportunity Areas by habitat system, plus landscape-scale priority geographies. Data © Missouri Department of Conservation (MDC); redistribution license pending confirmation. Source: the <a href="https://mdc.mo.gov/sites/default/files/2022-04/2022-Missouri-CCS.pdf" target="_blank" rel="noopener">2022 Missouri CCS</a> (MDC ArcGIS COA services).</p>
<div class="layer">
<div class="name">Conservation Opportunity Areas (COAs) <span class="pill">7 habitat systems</span></div>
<div class="source">Priority areas by habitat system: Grassland/Prairie/Savanna, Forest/Woodland, Glade, Cave/Karst, Wetland, and Stream Reach (aquatic line features). Each COA is a named place identified for focused conservation.</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/missouri/ccs-2022/grassland-prairie-savanna-coa/stac-collection.json" target="_blank" rel="noopener">STAC: Grassland</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/missouri/ccs-2022/forest-woodland-coa/stac-collection.json" target="_blank" rel="noopener">STAC: Forest</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/missouri/ccs-2022/stream-reach-coa/stac-collection.json" target="_blank" rel="noopener">STAC: Stream</a><a href="https://mdc.mo.gov/sites/default/files/2022-04/2022-Missouri-CCS.pdf" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">Priority Geographies <span class="pill">11 features</span></div>
<div class="source">Landscape-scale conservation priorities that sit above the individual COAs in Missouri's strategy.</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-swap/missouri/ccs-2022/priority-geographies/stac-collection.json" target="_blank" rel="noopener">STAC</a><a href="https://mdc.mo.gov/sites/default/files/2022-04/2022-Missouri-CCS.pdf" target="_blank" rel="noopener">Source</a></div>
</div>
</div>
<div class="layer-group">
<h3>National context layers</h3>
<p class="grp-note">US-wide reference data for overlaying on any state's plan.</p>
<div class="layer">
<div class="name">PAD-US 4.1 — Fee Lands & Easements</div>
<div class="source">USGS Protected Areas Database of the United States. Fee lands and conservation easements, colored by GAP status (1 = managed for biodiversity → 4 = no known mandate).</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-padus/padus-4-1/fee/stac-collection.json" target="_blank" rel="noopener">STAC: Fee</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-padus/padus-4-1/easement/stac-collection.json" target="_blank" rel="noopener">STAC: Easement</a><a href="https://www.usgs.gov/programs/gap-analysis-project/science/protected-areas" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">NLCD 2024 Land Cover</div>
<div class="source">Annual National Land Cover Database 2024, 30 m, conterminous US (MRLC / USGS).</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-land-cover/nlcd-2024/stac-collection.json" target="_blank" rel="noopener">STAC</a><a href="https://www.mrlc.gov" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">Social Vulnerability Index (SVI 2022, census tracts)</div>
<div class="source">CDC / ATSDR census-tract vulnerability composite from 16 census variables (overall percentile ranking).</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-social-vulnerability/2022/stac-collection.json" target="_blank" rel="noopener">STAC</a><a href="https://www.atsdr.cdc.gov/place-health/php/svi/" target="_blank" rel="noopener">Source</a></div>
</div>
<div class="layer">
<div class="name">US Census Administrative Boundaries</div>
<div class="source">TIGER/Line — states, counties, 119th-Congress congressional districts (2024), and state legislative districts, upper and lower chambers (2025).</div>
<div class="links"><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-census/census-2024/state/stac-collection.json" target="_blank" rel="noopener">STAC: State</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-census/census-2024/county/stac-collection.json" target="_blank" rel="noopener">STAC: County</a><a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-census/census-2024/cd/stac-collection.json" target="_blank" rel="noopener">STAC: Congressional</a><a href="https://www.census.gov/geographies/mapping-files/time-series/geo/tiger-line-file.html" target="_blank" rel="noopener">Source</a></div>
</div>
</div>
<p style="margin-top: 1.6rem;">Browse the full STAC catalog at <a href="https://radiantearth.github.io/stac-browser/#/external/s3-west.nrp-nautilus.io/public-data/stac/catalog.json" target="_blank" rel="noopener">radiantearth.github.io / stac-browser</a> to explore additional datasets not yet enabled in the app.</p>
</section>
<div class="foot">
<div class="partners">
<span>UC Berkeley</span>
<span>CDFW</span>
<span>NDOW</span>
<span>Missouri Dept. of Conservation</span>
</div>
<div>Built by the <a href="https://github.com/boettiger-lab" target="_blank" rel="noopener">Boettiger Lab</a> at UC Berkeley · California SWAP data CC-BY-4.0; Nevada (NDOW) & Missouri (MDC) data © their agencies, redistribution license pending · <a href="https://github.com/boettiger-lab/swap" target="_blank" rel="noopener">Source on GitHub</a></div>
<div style="margin-top:0.4rem;">A work in progress — feedback welcome via <a href="https://github.com/boettiger-lab/swap/issues" target="_blank" rel="noopener">GitHub issues</a>.</div>
</div>
</main>
</body>
</html>