If something's missing, write to us — open an issue on GitHub.
Anonymous GitHub is a free, open-source tool that anonymizes GitHub repositories and pull requests for double-anonymous (double-blind) peer review. It replaces identifying information — such as the repository owner, organization name, and custom terms — so that reviewers cannot determine the identity of the authors through the code repository.
Anonymous GitHub either downloads the complete repository and anonymizes the content, or proxies requests to GitHub on the fly. In both cases, the original and anonymized versions of files are cached on the server. The system automatically detects and replaces the repository owner, organization name, and repository name. You can also specify additional custom terms to anonymize using one-per-line regex patterns.
In double-anonymous peer review, the boundary of anonymization is the paper plus its online appendix — not the entire internet. Searching for any part of the paper or the online appendix can be considered a deliberate attempt to break anonymity. Anonymous GitHub anonymizes the repository owner, organization, repository name, file and directory names, and file contents across all text-based file types.
Anonymous GitHub is completely free to use. However, the server costs hundreds of dollars per year to maintain. If you find the service useful, a small donation would be greatly appreciated. You can support the project by sponsoring on GitHub, donating through Ko-fi, or by clicking the "Support me" button on the site.
Anonymous GitHub can display and render a wide variety of file types:
Only text-based files are anonymized. Anonymous GitHub analyzes the content of each file to determine whether it is textual or binary.
Yes. In addition to full repositories, Anonymous GitHub supports anonymizing individual pull requests. Simply paste the URL of a GitHub pull request when creating a new anonymized repository, and the system will automatically detect that it is a pull request and anonymize it accordingly.
When creating an anonymized repository, you can associate it with a Conference ID. This allows conferences to define default anonymization settings (such as expiration dates) that are automatically applied to repositories submitted under that conference. If your conference provides a Conference ID, enter it during the anonymization setup.
You can configure one of three expiration strategies when creating your anonymized repository:
Yes. Anonymized repositories can be downloaded as a ZIP file. This is useful if reviewers want to build or test the code locally. The downloaded archive contains the fully anonymized version of the repository.
Yes. Anonymous GitHub provides a CLI tool that lets you anonymize repositories locally, generating an anonymized ZIP file on your machine. Install it via npm:
npm install -g @tdurieux/anonymous_github
anonymous_github
Data stored on Anonymous GitHub is never shared or used for any purpose beyond providing the anonymization service. When a repository is removed or expires, only its configuration is retained — this makes it easy to restore the repository if needed and ensures that no future repository reuses the same ID.
No. Only the total number of views is tracked as an incremental counter. It is not possible for the repository owner or for Anonymous GitHub to identify individual viewers. Reviewer anonymity is fully preserved.
Yes. Anonymous GitHub is fully open source (GPL-3.0) and supports Docker-based deployment. You will need to configure a GitHub OAuth app and provide a GitHub token. Detailed setup instructions are available on the GitHub repository.
The basic steps are:
.env file with your GitHub token, OAuth client ID, and client secretdocker-compose up -dStill have questions?
Open an issue on the GitHub repository and we'll be happy to help.