A choropleth map tracking immigration enforcement legislation across all 50 states — built to accompany "Fifty Ways to Enforce a Border," a piece of original reporting on the devolution of federal immigration enforcement to the state level. The data is live. The argument is visual.
The piece it accompanies — "Fifty Ways to Enforce a Border" — was reported by a Parlor reporting fellow. It covers a specific and underreported story: as federal immigration enforcement has become more politically volatile, conservative states have moved to fill the gap themselves, passing their own enforcement legislation and forming coalitions between state police forces and ICE.
That story is hard to tell in prose alone. You can cite numbers. You can name states. But the geographic pattern — the concentration, the spread, the states that opted in aggressively vs those that didn't — only becomes legible when you can see it all at once.
This map makes a claim: that immigration enforcement has been systematically redistributed from the federal to the state level, and the geography of that redistribution is not random.
The map shows enforcement-specific legislation only — laws directly tied to police cooperation with ICE, state-level detention powers, deportation facilitation, and enforcement coalition agreements. It does not include driver's license legislation or other immigration-adjacent bills.
That's a deliberate editorial decision. Other outlets — including the Marshall Project — included all immigration-related legislation when covering the same dataset. We found that approach diluted the enforcement story. A state passing a law about driver's licenses for undocumented residents is doing something categorically different from a state empowering its police force to act as ICE agents. Treating them as equivalent obscures the argument.
The map doesn't use a static JSON file. It calls a live HTTP endpoint built in Wix Velo — a serverless function that queries the data collection and returns the current state of the dataset on every page load.
That means as new legislation passes and the dataset is updated, the map automatically populates — no redeployment required. The visualization stays connected to the reality it's describing, which matters for a story that's still unfolding. Immigration enforcement legislation didn't stop in 2024. States are still moving.
The source data comes from the National Conference of State Legislatures immigration legislation database — a comprehensive tracker of state-level immigration bills, their status, last action dates, and bill summaries. We pulled enforcement-specific records and built the Velo collection around that filtered dataset.
/_functions/immigrationLawsByState returns live JSONThe map uses a four-step color scale to show enforcement density by state — from no laws in the dataset through to six or more. The AlbersUSA projection keeps Alaska and Hawaii visible without distorting the continental states.
Hovering any state with legislation opens a tooltip showing each bill — its number, year, plain-language summary, current status, and last action date. States with no enforcement legislation in scope are not interactive. The visual distinction between active and inactive states is immediate.
The Parlor's readers are not data scientists. The map needed to be immediately legible to someone who has never interacted with a choropleth — and it needed to work for readers who navigate by keyboard or use assistive technology.
Every state with legislation is keyboard-navigable with a tab index. ARIA labels describe each state's content for screen readers. The tooltip is marked as a live region so screen reader users hear updates as they navigate. States without legislation in scope are explicitly excluded from the tab order — they're not interactive, so they shouldn't pretend to be.
Accessibility in data journalism isn't an afterthought. If the visualization only works for sighted users with a mouse, it's not actually public-facing journalism.