npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@tdurieux/anonymous_github

v2.2.0

Published

Anonymise Github repositories for double-anonymous reviews

Downloads

22

Readme

Anonymous Github

Anonymous Github is a system that helps anonymize Github repositories for double-anonymous paper submissions. A public instance of Anonymous Github is hosted at https://anonymous.4open.science/.

screenshot

Anonymous Github anonymizes the following:

  • Github repository owner, organization, and name
  • File and directory names
  • File contents of all extensions, including markdown, text, Java, etc.

Usage

Public instance

https://anonymous.4open.science/

CLI

This CLI tool allows you to anonymize your GitHub repositories locally, generating an anonymized zip file based on your configuration settings.

# Install the Anonymous GitHub CLI tool
npm install -g @tdurieux/anonymous_github

# Run the Anonymous GitHub CLI tool
anonymous_github

Own instance

1. Clone the repository

git clone https://github.com/tdurieux/anonymous_github/
cd anonymous_github
npm i

2. Configure the GitHub token

Create a .env file with the following contents:

GITHUB_TOKEN=<GITHUB_TOKEN>
CLIENT_ID=<CLIENT_ID>
CLIENT_SECRET=<CLIENT_SECRET>
PORT=5000
DB_USERNAME=
DB_PASSWORD=
AUTH_CALLBACK=http://localhost:5000/github/auth,
  • GITHUB_TOKEN can be generated here: https://github.com/settings/tokens/new with repo scope.
  • CLIENT_ID and CLIENT_SECRET are the tokens are generated when you create a new GitHub app https://github.com/settings/applications/new.
  • The callback of the GitHub app needs to be defined as https://<host>/github/auth (the same as defined in AUTH_CALLBACK).

3. Start Anonymous Github server

docker-compose up -d

4. Go to Anonymous Github

Go to http://localhost:5000. By default, Anonymous Github uses port 5000. It can be changed in docker-compose.yml. I would recommand to put Anonymous GitHub behind ngnix to handle the https certificates.

What is the scope of anonymization?

In double-anonymous 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 a deliberate attempt to break anonymity (explanation)

How does it work?

Anonymous Github either download the complete repository and anonymize the content of the file or proxy the request to GitHub. In both case, the original and anonymized versions of the file are cached on the server.

Related tools

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

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

See also