About Home On The Range
Pick a school level, see every Austin-metro attendance zone, and compare ratings, demographics, and home values zone by zone.
What This Is
When you shop for a house with kids, the school zone matters as much as the kitchen. Home On The Range puts every attendance zone in the Austin metro (29 districts; over 400 zones across the district, high, middle, and elementary levels) on one interactive map. Each zone gets a card with its TEA accountability rating, population and household income from the Census, a demographic breakdown, the median appraised value of homes that changed hands in the last year, and how often homes turn over. You can filter zones by any of those numbers, color the whole map by one metric, and drop a pin on an address to see exactly which schools serve it.
Every number on the map was compiled ahead of time and committed as static files. The viewer never calls a live API for data, so nothing you type or click is sent anywhere, and the page can't break because some district's server is down. The trade-off is honesty about freshness: every card shows when its data was fetched and which school year its boundary describes.
Architecture at a Glance
Single-headed arrows are one-way (upload); double-headed are request/response. Numbers match the steps below; 5a/5b happen offline, before you ever load the page.
What Happens When You Open the Map
- bigolbuffalo.com serves this site's wrapper page: the header, the footer, and an iframe where the map will live.
- The iframe loads the viewer (one HTML file with all of its JavaScript inline) from the map's own CloudFront distribution, backed by its own S3 bucket.
- The viewer pulls its data: a registry of all 400+ zones, then each zone's boundary polygon, demographics, school rating, and deed-transfer files. That is about 2,100 small JSON files, fetched through a bounded pool of 24 so the browser never chokes, all served gzipped from CloudFront's cache.
- Leaflet draws the basemap with tiles from CARTO / OpenStreetMap, the only external service on the page, and renders every zone, card, and pin from the committed data.
- None of that data was computed live. Weeks or months earlier, a Python pipeline on a home PC pulled zone polygons from each district's GIS (ArcGIS, MyPlanWare, Google My Maps KML, Transfinder), ratings from TEA, block-level population from the Census, and deed transfers from three county appraisal districts; joined them; ran an audit (no overlaps, full district coverage, every campus inside its own zone); and synced the result to S3.
Where the Data Comes From
| Data | Source | Notes |
|---|---|---|
| Zone boundaries | Each district's own GIS | ArcGIS services, MyPlanWare, Google My Maps KML, Transfinder InfoFinder; TIGER district polygons where one campus serves the whole district. A few districts publish only PDFs and are honestly left blank. |
| School ratings | TEA (txschools.gov) | A-F accountability ratings, achievement/growth scores, CCMR, enrollment |
| Demographics | US Census (ACS 5-year + PL 94-171) | Block-level population apportioned into each zone, with margins of error carried through |
| Home values & turnover | Travis, Williamson & Hays CADs | Appraised values of recently transferred homes. Texas is a non-disclosure state, so these are NOT sale prices, and the map says so. |
| County lines | Census TIGERweb | Reference overlay |
Tech Stack
| Layer | Tools |
|---|---|
| Data pipeline | Python 3.13, shapely, pyproj (geodesic areas, boundary set-ops, point-in-zone audit) |
| Viewer | One static HTML page, vanilla JavaScript, Leaflet |
| Hosting | S3 static website + CloudFront (its own bucket and distribution, separate from this site's) |
| Deploy | Node script wrapping aws s3 sync + a CloudFront cache invalidation, same pattern as this site |
Hosting & Cost
The whole thing is about 90 MB of static files. S3 storage for that is roughly a quarter-cent per month; CloudFront's free tier covers personal-scale traffic. Realistic total: well under $1/month, most months $0. There is no server to patch and nothing that can fall over at 2 AM.
Source Code
The whole project (pipeline, committed data, viewer, audit) has its own repo: github.com/JackVance/home-on-the-range. Start with zones.toml (every zone's source and provenance) and src/audit_zones.py (the checks behind the coverage claims). The only piece that lives in this site's repo is the wrapper page you're looking through.