A Python data analysis library that is optimized for humans instead of machines.


Ally-Py is a flexible, rapid development framework for developers who want to build any web based application with a REST API.


Amo is a simple service to provide you with the up-to-date share count of a given URL on social networks.


This little coffee script will watch Wikipedia for edits from a set of named IP ranges and will tweet when it notices one. It was …


Autotune is a centralized management system for your charts, graphics, quizzes and other tools, brought to you by the Editorial Products team at Vox Media.



Backbone.js is a DoumentCloud project that gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API …


A fork of Depict to create a node.js screenshot service.

Banquo Server

A Node Express.js server set to run the Banquo library as a service.


A command-line tool for exploring the PAC donor-recipient relationship.

Bees with machine guns

A utility for arming (creating) many bees (micro EC2 instances) to attack (load test) targets (web applications).


A command-line tool to better visualize crowded dot density maps.


BookJS is a JS lib that can turn a webpage into a formatted Book ready to print to PDF.


Booktype is a free, open source platform that produces beautiful, engaging books formatted for print, Amazon, iBooks and almost any e-reader.


broca is an NLP library for experimenting with various approaches.


Butter is the authoring library for Popcorn, an interactive video-editing tool. This version is a fork by BBGInnovate to create KettleCorn, a version of Popcorn …


Campaign Cash

A Ruby client for interacting with The New York Times Campaign Finance API.


CartoDB is an open-source platform to map, analyze and build apps with your data in the cloud.


A set of tools for fetching shapefiles from the Census FTP site, then extracting data from them.

Chartbuilder / Gneisschart

Chartbuilder / Gneisschart is a D3.js based front-end charting application that facilitates easy creation of simple beautiful charts.

Chicago Flu Shots

Web app that shows the location of flu shot clinics in Chicago, using data from the Chicago Department of Public Health, a Google Fusion Table, and the Google Maps API.

Contextual video

Contextual video allows an editor to add additional data and context to a video such as data stored in a Google Docs spreadsheet.


Command line tool for using the dedupe python library for de-duplicating CSV files.



D3.js is a JavaScript library for manipulating documents based on data.


In addition to big, long-term projects, the NPR Visuals team also produces short-turnaround charts and tables for daily stories. Our dailygraphics rig, newly open-sourced, offers …


Dataset is a JavaScript library that makes managing the data behind client-side visualisations easy, including realtime data. It takes care of the loading, parsing, sorting, …

dataset (Python)

dataset is a Python library that makes reading and writing data in databases as simple as reading and writing JSON files.


Datastringer aims to automate data updates for journalists. To be like a newswire agency, but with data.


Daybreak is a simple key value store for Ruby. It has user defined persistence, and all data is stored in a table in memory so …

Década Votada

A visualization news app to help people understand the elections of Argentina’s National Congress and the candidate’s degree of allegiance to their party at the moment of voting.


A set of helpers for baking your Django site out as flat files.


Tools for printing filler text in your Django templates, a technique from the days of hot type known as greeking.


Newcache is an improved memcached cache backend for Django. It was forked from Ericflo.

Django Project Template

A custom template for initializing a new Django project the Data Desk way.


Convert a shapefile into an SVG you can use with JavaScript libraries.


A Python library for hyphenating HTML in your Django project.


A Django database field for storing YAML data.


Docco is a quick-and-dirty, hundred-line-long, literate-programming-style documentation generator. It produces HTML that displays your comments alongside your code.


DocumentCloud allows journalists working on document related projects to upload, analyze, annotate, and publish primary source material.



NPR’s 2012 elections coverage code, open-sourced.


Get database-ready election results from the Associated Press Election API v2.0. Designed to be fast, friendly, and largely agnostic to stack/language/database choice.


Emphasis provides dynamic paragraph-specific anchor links and the ability to highlight text in a document.


Dot-density maps in JavaScript. It’s like englewood but in Javascript with Canvas.



An experiment to standardize individual donor names in campaign finance data using simple graph theory and machine learning.


A Ruby parser for electronic candidate, PAC and party campaign filings from the Federal Election Commission.


FourScore is a bootstrapper for letting audience members mark their position on a grid, like the New York magazine approval matrix and the WNYC Sentiment …


Gimme Props!

The project is an interactive explainer covering California’s ballot measures for the 2012 election. The template used for the project has been open sourced on GitHub.

GS proxy

A dead simple caching proxy for Google spreadsheets. Uses Flask and meant to be deployed on Heroku.

Guardian Frontend

The public repo for the Guardian’s responsive website.



Highcharts is a JavaScript charting library based on SVG and VML rendering.


I Mage Proxerific

A proxy server to serve smaller versions of images of legislators in Minnesota, from the Open States API.


The White House releases a lot of stuff, and some of it is included in what’s known as the Compilation of Presidential Documents. Ifill is …


At the moment, this library is a work in progress. It currently reads the IL State Board of Elections Reports Filed feed, and is able …

IRS Form 990 search

Build an index of all financial documents filed by nonprofit organizations since 2002, with links to PDFs uploaded by


jQuery Address

The jQuery Address plugin provides deep linking capabilities and allows the creation of unique virtual addresses that can point to a website section or an application state.


Autocomplete for address searches, using jQuery.

jQuery Reel

Reel is a jQuery plugin for 360° object movies, vistas and panoramas.


A jQuery plugin that adds a bindable ‘inview’ event for detecting when an element is scrolled into view.


JSONProxy turns JSON endpoints into JSONP for cross-domain requests. It also allows for whitelisting for security and caching to aid in performance.


Landline + Stateline

Landline is a JavaScript library that creates SVG maps from GeoJSON. It comes with Stateline, which makes creating responsive U.S. state and county maps easy.


A collection of simple math functions.


A Python library that standardizes the names of U.S. states.


Leaflet is a modern open-source JavaScript library for mobile-friendly interactive maps. It is developed by Vladimir Agafonkin with a team of dedicated contributors.


Code and data for The Upshot’s Senate model. Leo combines polls with other information to predict how many Senate races Democrats and Republicans will win …


At the OpenNews July 2015 Code Convening, the NPR Visuals Team built and released Lunchbox, a desktop app for creating shareable images across social media …



A simple command-line tool to export MBTiles to an S3 location.


miniMonth.js is a jQuery plug-in that displays a mini month-style calendar, as seen in the Providence Journal.

Minnesota Legislature Tracker

An application that uses the Open States API and Google Spreadsheets to track legislation in Minnesota.


A Twitter API 1.1 script to make a Twitter bot that retweets tweets that contain words in a RegEx.


Narrative Charts

XKCD style narrative charts layout engine for d3.

Newsapps boundary service

The Boundary Service is a ready-to-deploy system for aggregating regional boundary data (from shapefiles) and republishing via a RESTful JSON API.


Newscoop 4 is a CMS (content management system) that aims to help independent news organisations manage online publications, enrich content and find new audiences.


Nomo is an API that works with Amo to return all social shares from the home page.


Open Gender Tracker

The OpenGenderTracking project aims to build software that assists with analyzing the gender balance of news content.

Opened Captions

A SocketIO API for live TV closed captions.

Overview Project

Overview is an open-source tool to help journalists find stories in large numbers of documents, by automatically sorting them according to topic and providing a …


Poderopedia Plug & Play

Poderopedia Plug & Play Platform is a Data Intelligence Management System that allows you to create and manage large semantic datasets of information about entities; map and visualize entity connections; include entity related documents; and add and show sources of information and news mentions of entities.


PourOver is a library for simple, fast filtering and sorting of large collections – think 100,000s of items – in the browser. It allows you …

ProPublica Nerd Guides

ProPublica’s news application style guide, design overview, coding manifesto, standard social tags, and data bulletproofing guidelines.


Resize an iframe responsively depending on the height of its content and the width of its container.


A simple Python wrapper for the DocumentCloud API.


A Python wrapper for the Associated Press U.S. election data service.


A simple Python wrapper for version three of Google’s geocoder API.


python-tablefu is a tool for manipulating spreadsheet-like tables in Python. It began as a Python implementation of ProPublica’s TableFu, though new methods have been added. …


Quiet L.A.

A template for a muted base layer about Southern California. Designed for overlaying loud data visualizations.



Ractive.js is a library for building interactives and news apps. It reduces the amount of code needed to build user interfaces and data vizualisations by …


Literate data analysis with iPython notebooks and Jekyll.

Responsive IFrames

A tiny jQuery plugin developed by NPR to make it easier to create responsive IFrames in challenging use-cases in which embedded content can have unknown width and height, unknown width/height ratio, and changes width or height as users interact with dynamic content.



An open-source tool to help journalists communicate securely with sources using Tor.


Sheetsee.js is a JavaScript library mashup that allows you to manage visualized web content through Google Spreadsheets.

Silent LA

A template for a black base layer about Southern California. Designed for overlaying bright data visualizations. Created with open data.

Simple Map D3

A very simple “choropleth” style map with tooltips with D3. All you need is a GeoJSON of polygons.

Simple Tiles

Simple Tiles is an image generation library for spatial data written in C. At it’s core, it is a thin wrapper on top of OGR for spatial data and Cairo for image generation.

Simple Tiles Streets

Generating all the roads for you since 2012.

Simpler Tiles

Simpler Tiles is a library of ruby bindings for Simple Tiles, a GIS image generation library. It allows you to generate PNG based map images without having to dip into straight C.


Alpha release of a tool to add in-line audio clips to text.


This app allows you to map out your sounds via the Soundcloud API. Let’s say you’ve done a series of audio pieces about certain parts …

Stat Index

Stat Index takes news content, mines the text, and measures the use of statistical insights.


StateFace is a font you can use in your web apps when you want tiny state shapes as a design element. It’s designed to be …


Statement parses RSS feeds and HTML pages containing press releases and other official statements from members of Congress, and produces hashes with information about those …

Story Carder

A simple web app that lets you enter in your story cards—in the the Menlo Innovations Way/Agile project management sense—and print them for a storyboard.


An open source project by the New York Times R&D Lab which provides a general purpose graphical tool for dealing with streams of data.


Superdesk is a next-generation open source newsroom stack for managing newsrooms and their content. With it media organisations are free to define their own type of newsroom organisation, content delivery and business strategy.



Source code for the Planet Money Makes a T-Shirt project.


TableFu is a ruby gem for spreadsheet-style handling of arrays (e.g. filtering, formatting, and sorting by “column” or “row”). In addition, it has the ability …


TableSetter is a Ruby app which provides an easy way to present CSVs hosted locally or remotely in custom HTML.


A python-based tool to help convert a CSV file into an interactive HTML table that sorts, filters and paginates and is easy to publish.


Tabletop.js takes a Google Spreadsheet and makes it easily accessible through JavaScript.


A web application that lets you easily extract tabular data from PDF files.


Tamper is a serialization protocol for categorical data. It achieves high compression ratios by finding the smallest possible binary representation for each category.


The Tarbell template uses Python Flask and Google Spreadsheets to create simple, static sites that can be baked out to Amazon S3 or your local …


Tastypie is a webservice API framework for Django.

Tik Tok

Tik Tok is a Javascript tool to easily create beautiful, simple, mobile-friendly, vertical timelines.


TileMill is a modern map design studio powered by open source technology.


TimelineJS is an open-source tool that enables journalists/publishers to build visually-rich interactive timelines quickly and easily.


TimelineSetter creates beautiful timelines. It is a command-line utility that takes a specially-structured CSV file as input and outputs standards-compliant HTML/CSS/JavaScript. It “bakes out” timelines, …

Tools for Wordpress

This is a box of tools for working with WordPress on the command line, automating WordPress, and Fabric scripts for automated deployment.


During the 2012 election, ProPublica created an news application called Free the Files that crowdsourced political TV spending by asking users to transcribe certain data …


Tulip is an application to make building choropleth styled maps easy.


Node.js scripts for pulling data from Google Docs and uploading them to S3 with data scrubbing and moderation.


User-Submitted Leaflet Map

A work in progress, combining @courieressig’s “Tabletop to Leaflet” and @mapbox’s “Geo for Google Docs” into a single entity. It’s a responsive mapping tool that …


VA data dashboard

An API for data about disability claims from the US Department of Veterans Affairs.



A Twitter bot that replies with a forecast. See it in action by Tweeting at @HiWeatherbot with a location.

Who Voted What

Shows London (UK) Mayoral Election data organised by postcode so you can see how your street/area voted, and how this compares to the London-wide average.


wikichanges is a node.js library for getting an edit stream from the 37 major language Wikipedias. The Wikipedia MediaWiki installations are configured to log changes …


Wraith is a responsive screenshot comparison tool that uses PhantomJS or SlimerJS with ImageMagick to capture and diff screenshots from websites in different environments (e.g. …