Contribute to OpenDP

Contribute

The OpenDP project welcomes contributions and suggestions, including:

  • Development (see below), ranging from creating sample notebooks and working on the core library to integrating with data repositories and participating in initiatives such as federated learning.
  • Working Groups (forthcoming), participating in or forming groups focused on topics from differential privacy algorithm development and disciplinary use cases to public policy.
  • Education (forthcoming), promoting understanding of differential privacy to a wide variety of audiences, including students and professionals in technical, legal, and public policy domains.
  • Partner with the OpenDP project to build system solutions with differential privacy.  Please contact us.
  • Support the OpenDP project by giving to the OpenDP fund. Please contact us.

Please continue reading to learn more and feel free to reach out with any questions. Also make sure to read and respect our community’s Code of Conduct

 

Development

OpenDP development consists of several GitHub repositories. Please use the links below for bug reports, feature requests, install issues or to suggest ideas.

If you plan to contribute new features, please discuss the feature with us by using one of the links below or sending us an email. (We may be working on that feature already, or taking a different approach.)

 

OpenDP Library - The core library of differential privacy algorithms powering the OpenDP Project.

The full documentation for OpenDP is located at https://docs.opendp.org. Here are some helpful entry points:

  • User Guide

  • Python API Docs

  • SmartNoise SDK - The SmartNoise SDK builds upon the OpenDP library, adding functionality through two separate Python packages:
  • smartnoise-sql - Run differentially private SQL queries using PostgreSQL, SQL Server, Spark, Pandas (sqlite), or PrestoDB ;

  • smartnoise-synth - Generate differentially private synthetic data for tabular data. The package includes MWEM, QUAIL, DP-CTGAN, PATE-CTGAN, and PATE-GAN.

For questions about the SmartNoise SDK, please feel free to use the GitHub discussions board.