This app uses the Github issue search API to provide a convenient issue browser across all of our supported modules.
It uses vue-cli to simplify local development and production builds for VueJS. You can use it on https://github-issue-search-client-silverstripe.vercel.app.
This project is powered by Vercel.
Use Node v8 or higher.
npm install
For deployment, you will need to install Vercel and log in.
Create an .env
with:
VUE_APP_GRAPHQL_ENDPOINT=https://api.github.com/graphql
VUE_APP_GRAPHQL_TOKEN=<token>
Get a Github Personal Access Token and chuck it in <token>
.
Note that the token should NOT have any other permissions/scopes, since it will be included
in the client bundle (and is readable by everyone through network requests).
The only reason to include it here is avoiding to hit Github's rate limits without it.
In order to get an updated list of our supported modules,
you can run the following command. This will be written to the repos.json
file in the src
folder, which can be
updated (in VCS) periodically if required. This will also happen during a deployment and auto-update in the
Now environment.
npm run get-repos
npm run serve
npm run build
The project is published to Vercel automatically when changes are merged into the master branch. This is done via an automatic GitHub integration.
You can also deploy projects manually. To do this you will need to have the Vercel CLI installed, be logged in, part of the "silverstripe" Vercel team, and have the team configured in your profile. For access to the team, contact Ingo or Garion.
# Login if necessary
vercel login
# Switch to SilverStripe Ltd team
vercel teams switch silverstripe
# Ship it!
vercel
It will give you an updated URL to run in your browser. This will also run automatically as a Git hook.
To store the GraphQL API token in an environment variable for Now, you need to use the CLI to save is as a secret:
vercel secret add graphql-api-key YOURAPITOKENHERE
The secret variable name @graphql-api-key
is referenced from now.json
to map to an environment variable.
You can pass in a custom list of repositories via URL params:
?customRepos=silverstripe/silverstripe-framework,silverstripe/silverstripe-cms
This can be helpful to filter only to repos you're interested on in a specific project context, e.g. extracting them from your composer.lock file.
Protip: You can generate these custom repos from your composer.lock
file automatically
through Silverstripe Module Issue Browser Util.
Assuming you've got your Composer binaries set up globally, the following will read from your lock file and open the issue browser:
composer global require silverstripe/github-issue-search-composer-util
cat /my/project/composer.lock | github-issue-search | xargs open
The default instance has Google Analytics set up under a Silverstripe owned account. Please contact maintainers if you'd like to have a look!