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

pullie

v6.1.2

Published

A GitHub bot that makes your PRs better

Downloads

82

Readme

Node.js CI Coverage Status

NPM

pullie

Pullie is a GitHub bot that makes your PRs better. It runs as a GitHub App and receives webhook calls whenever a pull request is made against a repo on which the app is installed. Plugins provide handy functionality like linking to Jira tickets, requesting reviews, and commenting about a missing required file change.

System requirements

Pullie runs on public GitHub or on GitHub Enterprise 2.14 or later. It requires Node.js 14 or later.

How to run/deploy

The easiest way to run Pullie is to clone this repo and run npm start. You can do so in a Docker container for easy deployment.

Configuration

You must specify configuration values via environment variables. You may do so using a .env file. See .env.example for a sample configuration with full documentation.

Setting up your GitHub App

Pullie runs as a GitHub App, so if you are installing it on your own GitHub Enterprise instance, you must register a GitHub App there first. Here's how:

  1. Browse to your GHE server homepage
  2. Go to your user icon in the top right and select Settings from the menu
  3. Select Developer Settings on the left side
  4. Select GitHub Apps on the left side
  5. Press the New GitHub App button on the top right
  6. Fill out the form as follows:
  • GitHub App name: Pullie

  • Description (optional): Pullie is a GitHub bot that makes your PRs better. It runs as a GitHub App and receives webhook calls whenever a pull request is made against a repo on which the app is installed. Plugins provide handy functionality like linking to Jira tickets, requesting reviews, and commenting about a missing required file change.

  • Homepage URL: The base URL of your Pullie deployment (e.g. https://pullie.example.com)

  • User authorization callback URL: Same URL as above

  • Setup URL (optional): Not needed -- leave this blank

  • Webhook URL: Your deployment's base URL (e.g. https://pullie.example.com/) (unless WEBHOOK_PATH is adjusted in config)

  • Webhook secret (optional): Choose a random string as your webhook secret (e.g. a random UUID perhaps)

  • Permissions: Leave all as No access except the following:

    • Repository administration: Read-only
    • Repository contents: Read-only
    • Repository metadata: Read-only
    • Pull requests: Read & write
    • Single file: Read-only for .pullierc
    • Organization members: Read-only
  • Subscribe to events: Leave all unchecked except Pull request

  • Where can this GitHub App be installed? This is up to you. If you choose Only on this account, other users in your GHE instance will not see your application.

  1. Press the Create GitHub App button
  2. Now you have a GitHub App, so we need to collect some information to use in our configuration file:
  • Scroll to the bottom of the configuration page for your new GitHub App
  • Copy the ID and use as your app's ID in the config file
  • Copy the Client ID and use as your app's client ID in the config file
  • Copy the Client secret and use as your app's client secret in the config file
  • Click the Generate private key button to create your app's private key file. Copy the file it downloads to your Pullie deployment in a secure place (e.g. by using Kubernetes Secrets)
  1. Upload a logo for Pullie. You can use one of the PNG files in the static folder of the Pullie npm package if you'd like.

Install your GitHub App on an org/user

Now, you can install your GitHub App on an org or user. Select Install App on the left side of the App's config page and then press the green Install button on any org(s) and/or user(s) you'd like Pullie to run on. Pullie will not do anything unless a repo has a .pullierc file, so it is safe to install across an org.

User documentation

User docs are available at the docs URL of your Pullie deployment (e.g https://pullie.example.com/docs). Just browse there and you'll see full documentation on installing the App and configuring a repo to work with it.