Documentation for my lesson plans and open-source software

Lesson plans
First Automated Chart • Learn how you can use Python and the Datawrapper API to create a limitless number of charts and maps.
First Django Admin • A guide to creating a web application for enlisting reporters in data entry and refinement
First GitHub Scraper • An introduction to free, automated web scraping with GitHub Actions
First Pull Request • How to propose changes to open-source software using GitHub pull requests
First Python Notebook • A guide to analyzing data with Python and the Jupyter notebook
First Visual Story • A guide to publishing a standalone story from a dataset
First Web Scraper • A guide to writing a web scraper with Python
Open-source software
air-quality-index • Download air quality index data from AirNow
atcf-data-parser • A Python parser and command-line utility for the “a-deck” data posted online by the Automated Tropical Cyclone Forecasting System
bln-python-client • Python client for the API
calfire-wildfires • Download wildfires data from CalFire
censusbatchgeocoder • A simple Python wrapper for the U.S. Census Geocoding Services API batch service
census-data-aggregator • Combine U.S. census data responsibly
census-error-analyzer • Analyze the margin of error in U.S. census data
census-map-consolidator • Combine Census blocks into new shapes
census-map-downloader • Easily download U.S. census maps
cpi • A Python library that quickly adjusts U.S. dollars for inflation using the Consumer Price Index
django-anss-archive • A Django application to archive real-time earthquake notifications from the U.S. Geological Survey’s Advanced National Seismic System
django-bakery • A set of helpers for baking your Django site out as flat files
django-greeking • Django template tools for printing filler, a technique from the days of hot type known as greeking
django-internetarchive-storage • A custom Django storage system for Internet Archive collections
django-postgres-copy • Quickly import and export delimited data with Django and PostgreSQL
django-yamlfield • A Django database field for storing YAML data
inciweb-wildfires • Download wildfire incidents data from InciWeb
ipsos-credibility-interval • A Python tool that calculates Bayesian credibility intervals for online polling using the Ipsos method
nasa-wildfires • Download wildfire hotspots detected by NASA satellites and the Fire Information for Resource Management System (FIRMS)
news-homepages • A bot that gathers, archives and shares screenshots of news homepages
noaa-wildfires • Download wildfires data from NOAA satellites
nws-aurora • Download forecast data for Aurora Borealis and Aurora Australis from the National Weather Service
nws-wwa • Download watch, warning and advisory data from the National Weather Service
prefect-flow-template • A template repository with all the fundamentals needed to develop and deploy a Python data-processing routine for Prefect pipelines.
python-googlegeocoder • A simple Python wrapper for Google’s geocoder API
python-muckrock • A simple Python wrapper for the MuckRock API
Refinitiv Data Python Cookbook • Practical examples for users of the Refinitiv Data Library for Python
reuters-style • A Python library that format dates, numbers and text to conform with the Reuters Style Guide, the standards that guide the world’s largest independent newsroom
savepagenow • A Python wrapper and command-line interface for’s capturing service
storysniffer • Inspect a URL and estimate if it links to news story
upload-data-to-biglocalnews-org • Upload comma-delimited files to in your GitHub Action
warn-github-flow • GitHub Action workflow for automating a WARN Act notice ETL pipeline
warn-scraper • Command-line interface for downloading WARN Act notices of qualified plant closings and mass layoffs from state government websites
warn-transformer • Consolidate, enrich and republish the data gathered by warn-scraper