Comment card provides a simplified interface for non-technical users — both authenticated and pseudonymous — to provide feedback for your GitHub-hosted project (in the form of GitHub issues)
Under the hood, Comment Card is just an abstraction layer over a gem called Problem Child, which does all the heavy lifting. Problem child allows you to stand up a simple web form to create GitHub issues. If you're only looking to submit issues to a single repository, Problem Child may be the better route.
Comment card is designed to run on Heroku, but can run in any Ruby environment.
- Register a new OAuth application
- Set
GITHUB_CLIENT_ID
andGITHUB_CLIENT_SECRET
as environmental variables
That's it. Simply swap out github.com
with your Comment Card instance for any link to the new issue URL.
For example, if your project's new comment url is https://github.com/benbalter/comment-card/issues/new
and your Comment Card instance is as comment-card.herokuapp.com
, you'd link users to https://comment-card.herokuapp.com/benbalter/comment-card/issues/new
to submit comments.
You can also configure Comment Card to allow pseudonymous submissions that don't require submitters to have a GitHub login:
- Create a "bot" account (a dummy GitHub user that can be used to create the issues)
- Login as that user and create a personal access token with
public_repo
scope - Set the token as the
GITHUB_TOKEN
environmental variable
Users then will have the choice to enter their name or authenticate with GitHub before submitting.
If you allow pseudonymous submissions, best practices suggest that you should require users to verify that they are human to avoid spammy submissions. To enable recaptcha support:
- Get a recaptcha API Key
- Set
RECAPTCHA_PUBLIC
andRECAPTCHA_PRIVATE
environmental variables
Take a look at the 1.0 Milestone
script/bootstrap
script/server