Deploy your pull requests instantly to ▲ Now
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib Initial commit Dec 17, 2017
Dockerfile Initial commit Dec 17, 2017


Deploy your pull requests instantly to ▲ Now


Instant deploy

Deploy every pull request in your repository and get an unique URL on every commit.

Custom aliases

You are able to customize every pull request alias, pullmeapp provides some useful variables you can combine to shape your URL. For example, I'm personally using the following pattern https://pr-{pr}.{repo}

Getting started


You will need to prepare the following

  1. Now token
  2. GitHub token with repo access
  3. Set up a GitHub webhook with a secret

To get your Now token, head to your account settings and then to the Tokens section, create a new token and write it down somewhere.

To create a GitHub token, go to your account settings, click Developer settings and then choose Personal access tokens, create a new token and write down.


In your terminal run the following now command:

now ricardocasares/pullmeapp --docker

▲ Now will ask for all the required environmental variables, these are the following:


This is useful to setup the debug level, if you want to see only pullmeapp logs, set it to pma. If you want to see all the logs (including express app logs) set it to *


GitHub personal access token


This keyphrase needs to be setup both on the GitHub webhook and pullmeapp, make sure they match.


Now access token


This can be empty, a custom domain, or a domain template. In case you want to use templates, the following strings inside NOW_ALIAS are replaced by these values:

  • {pr} is the GitHub pull request number.
  • {author} is the PR author.
  • {hash} is the commit short hash.
  • {repo} is the repository name.

Make sure you always include the domain name, not just the subdomain, even when using urls, see some valid examples:

  • will always alias all PR's to this domain.
  • pr-{pr}-{repo} will be replaced, for example, as
  • {pr}-{repo} will use default domain.

Setup the webhook

Once you have deployed and optionally aliased your pullmeapp instance, go to your repository settings in GitHub, head to the Webhooks section and create a new webhook.

Set the Payload URL to match your deployment URL:

Select application/json for the Content type.

Use your GITHUB_SECRET as your secret, and make sure it is the same you configured in the last step.

Select Let me select individual events and check the Pull request checkbox.

Create a new pull request and check everything is fine.

Happy staging!


Pull requests and issues are very welcome.


To improve the development workflow, make sure you add a .env file with all your environment variables so you can use npm run dev to get the service started.

Once you have the service up and running, you can use localtunnel to make your service visible from outside, run npm install -g localtunnel and then tunnel your server like this: lt --port 3000, you will get an URL like the following and you can use this as your webhook for development.