XXX XXX is a system to anonymize XXX repositories before referring to them in a double-blind paper submission. To start using XXX XXX right now: XXX/

Indeed, in a double-blind review process, the open-science data or code that is in the online appendix must be anonymized, similarly to paper anonymization. The authors must

  • anonymize URLs: the name of the institution/department/group/authors should not appear in the URLs of the open-science appendix
  • anonymize the appendix content itself

Anonymizing an open-science appendix needs some work, but fortunately, this can be automated, this is what XXX XXX is about.

XXX XXX anonymizes:

  • the XXX owner / organization / repository name
  • the content of the repository
    • file contents (all extensions, md/txt/java/etc)
    • file and directory names

Question / Feedback / Bug report: please open an issue in this repository.


How to create a new anonymized repository

XXX XXX usage

To use it, open the main page (eg XXX/), and simply fill 1. the XXX repo URL and 2. the word list (which can be updated afterwards). The anonymization of the content is done by replacing all occurrences of words in a list by "XXX". The word list is provided by the authors, and typically contains the institution name, author names, logins, etc... The README is anonymized as well as all files of the repository. Even filenames are anonymized.

In a paper under double-blind review, instead of putting a link to XXX, one puts a link to the XXX XXX instance (e.g. XXX/ which is an anomyous version of this repo).

To start using XXX XXX right now, a public instance of anonymous_github is hosted at


What is the scope of anonymization?

In double-blind peer-review, the boundary of anonymization is the paper plus its online appendix, and only this, it's not the whole world. Googling any part of the paper or the online appendix can be considered as deliberate attempt to break anonymity (explanation)

By default, XXX XXX and XXX access public repositories. Public XXX repositories are not modified and hence are still visible on XXX and Google, even after anonymization.

Anonymizing private repositories: If you want to get a public anonymized URL of a private repository, you must give @tdurieux read access to the repo by adding him as collaborator.

How to edit an anonymized repository

XXX XXX usage

How it works?

The anonymization of the URL is achieved though proxying all requests.

Installing XXX XXX

From Source

git clone XXX/
cd anonymous_github
pip install -r requirements.txt
python -token <github_auth_token>

From Docker

docker pull tdurieux/anonymous_github:latest
docker run tdurieux/anonymous_github -token <github_auth_token> --host <hostname> --port <port>

Related tools

gitmask is a tool to anonymously contribute to a XXX repository.

blind-reviews is a browser add-on that enables a person reviewing a XXX pull request to hide identifying information about the person submitting it.

See also