Open Journalism Update: September 27–October 17, 2026

We skipped an issue, so this one covers three weeks. In that time, 11 news organizations created or opened 14 public repositories on GitHub. Highlights below.

Highlights

ProPublica released Looper, a Google Sheets extension that runs an AI prompt over a spreadsheet one row at a time. Aaron Brezel, one of the newsroom’s AI engineering fellows, built it after he noticed that most of the requests he got from reporters had a similar shape: a list of things, and a question to ask about each one. He wrote about it on Oct. 7. The project, which implements what Brezel calls “spreadsheet inference,” needs only a Google account and a Gemini API key. A companion repo, Looper Skills, includes an agent skill that turns a reporting question into a prompt you can run on every row, plus a written record of the definitions and edge cases behind it. It works in Claude and other assistants, with a hand-ported Gemini Gem for people who use Gemini. Both repos credit Claude in their commits (65 of the last 100 in Looper), and Looper Skills ships an AGENTS.md.

DW published the data and methodology behind “How green is Europe’s urban public transport?,” by Ana Muñoz Padrós, with partners from the European Data Journalism Network. Reporters collected more than 1,200 data points on bus, metro and tram fleets, emissions and sustainability pledges from city councils, transport authorities and operators across all EU capitals and six other cities. Every data point and its source is in a public spreadsheet. The team says they “occasionally” used Semantra, Dylan Freedman’s open-source semantic search tool, to find pledges in long city reports.

The Pudding published “Who believes in an afterlife?” by Alvin Chang, a narrated piece that seats a room of survey respondents and shows how belief has shifted within countries even while worldwide levels have held steady. The code draws on the Global Flourishing Study, with nearly 130,000 respondents in 23 countries, and the Integrated Values Surveys for trends by birth cohort.

Hacks/Hackers opened the “instructions” they send to an AI agent to create their Voter Guide Commons, a pilot that lets Claude, ChatGPT and other assistants answer voters’ questions by quoting local newsrooms’ voter guides, with the newsroom’s name and a link on every answer. The guides come from CalMatters, Wisconsin Watch, Planet Detroit, The Baltimore Banner, Grady Newsource and four Bay Area local papers. The server code is not public. We’re still figuring out the right way to open source agent prompts, and I thought this was an interesting approach. The instructions are licensed under Creative Commons.

Full Fact, the UK fact-checking group, published the data and code behind the first report of its Public Interest AI Trust Benchmark, “Wrong on Sunday, right on Monday. Why AI chatbots have a confidence problem.” Every day from July 15 to Sept. 22, the team put the same 22 questions to five chatbots (ChatGPT, Claude, DeepSeek, Gemini and Grok). The questions ranged from simple facts to contested civic topics such as voter ID and asylum support. Full Fact editors wrote a reference answer for each question and scored each against those answers. Full Fact says this is the code as it ran for the first report, and it’s not intended as a fully working system.

ICIJ released version 1.0 of an audio and video transcription extension for Datashare, its document search platform for investigations. It adds a transcription interface and API to Datashare and does all the speech recognition locally, so no audio or video goes to a third party. Sixty-five of the repo’s last 100 commits credit Claude.

iMEdD Lab in Athens published a notebook that pulls decades of temperature and rainfall records from the Copernicus ERA5 climate dataset, with a walkthrough by Pavlos Methodios. The examples map mean annual temperature in Germany from 1970 to 2025 and chart summer temperatures in Athens, Belgrade, Bologna, Burgas and Topeka, though with some small code changes it could work for other cities.

Freedom of the Press Foundation opened an explorer for WEBCAT, its experimental browser extension that blocks an enrolled website if the code it serves does not match what the publisher signed. A daily job checks every enrolled site the same way the extension does and publishes the results as a static page.

Gannett open-sourced mysql-replicator, which copies changes between MySQL versions that the database’s own replication does not support. One example is keeping an old 5.7 replica in sync with an 8.4 primary during an upgrade.

By the Numbers

Beyond new repos, 90 news organizations made a combined 7,677 public commits to GitHub during this period. The most active by commit count (excluding, as best we can, commits done by bots, gh-actions, or cron):

OrganizationCommits
The Guardian2,104
Freedom of the Press Foundation927
ICIJ688
Vox Media274
MuckRock211
Bloomberg186
Gannett175
Open States175
OpenAleph163
The Pudding150

This roundup is assembled with the help of open-journalism-bot, which monitors public GitHub activity from ~410 news organizations and posts new repositories to @openjournalism.news on BlueSky. Commit counts shown here exclude commits we identified as automated.


Discover more from Open Journalism

Subscribe to get the latest posts sent to your email.

Discover more from Open Journalism

Subscribe now to keep reading and get access to the full archive.

Continue reading