/backyourstack

BackYourStack analyzes repositories to recommend Open Source projects to support.

Primary LanguageJavaScriptMIT LicenseMIT

BackYourStack

Build Status Slack Status Dependency Status Greenkeeper badge

Discover the open source projects your organization is using that need financial support.

Our goal with BackYourStack is to make it easier for companies to identify the open source projects that they depend on that also need funding.

While we started with just node modules (as defined in package.json files) and with open source projects that are on Open Collective, we know that the open source community is much larger than that. That's why we would love to support more languages and platforms but for that, we need you!

Take a look at our public repository & Contributing Guidelines create or pick up issues and help us make open source more sustainable for everyone! 🙌

Service

The official BackYourStack service is available from https://backyourstack.com/

Development

Make sure you have Node.js version >= 10. We recommend using nvm: nvm install.

Install

git clone https://github.com/opencollective/backyourstack.git
cd backyourstack
npm install

Start

npm run dev

Environment Keys

In development environment, we use dotenv to set environment keys. To use it, create an .env file at the root of the repository and add environment keys in there.

GitHub API Keys

To allow authentication with GitHub, you'll need to set GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET.

You can get these keys by registering a new oAuth application at GitHub. By default, the callback URL should be http://localhost:3000/auth/github/callback.

Production

Prerequisite

Now

BackYourStack is currently deployed with Now. You will need to install Now Desktop or Now CLI.

Authenticate with:

now login

Switch to the Open Collective team account:

now switch opencollective

Secrets

Make sure that the following secrets are set (uses now secret):

name description
github_client_id Client id for the GitHub oAuth app
github_client_secret Client secret for the GitHub oAuth app
github_guest_token GitHub access token used to process unauthenticated requests

Eg: now secret add github_client_id {value}

Deployment

First:

now

If everything is ok, finalize with:

now alias