Tell your story through data

Compelling, data-driven narratives and tools for exploration and data preparation. Browse our work »


WhoWasInCommand

WhoWasInCommand

A system for compiling public information on security forces to aid journalists, human rights groups and litigators to hold security forces accountable.

Chicago's Million Dollar Blocks

Chicago's Million Dollar Blocks

An interactive map showing spending on incarceration for every block in the City of Chicago.

LargeLots.org

LargeLots.org

We worked with the City of Chicago and neighborhood groups to improve and scale up a program for selling land to residents.


Products

Bring these amazing civic and data tools to your city or organization. Browse our products »


Dedupe.io

Dedupe.io

Dedupe.io is a powerful machine learning tool that learns the best way to match similar rows in your data.

Councilmatic

Councilmatic

Your local city council, demystified. Search and browse your local legislation, representatives, and meetings.

Budget Breakdown

Budget Breakdown

Empower your audience to browse and compare budgets in an interactive visualization.


Blog

Transactional Testing with Pytest and Flask-SQLAlchemy

Transactional Testing with Pytest and Flask-SQLAlchemy

Jul 18, 2018 by Jean Cochrane

In this blog post we’ll cover DataMade’s approach to testing highly-stateful web apps like Dedupe.io, and introduce a new open-source plugin that we’re releasing to make it easier to test stateful Flask-SQLAlchemy apps using pytest: pytest-flask-sqlalchemy-transactions.

Read more »



Select clients

Columbia University LA Metro New Mexico in Depth Uptake.org New York City Atlanta Journal Constitution Associated Press Generation All Participatory Budgeting Project The Invisible Institute Macoupin County, IL New York State LISC Chicago National Democratic Institute University of Chicago DePaul Institute for Housing Studies