To make the Raffle contest a little more fun, we build an app that randomly suggests an issue for folks to work on. In addition, you can 👍 as many issues as you like to provide a little encouragement.
After this contest ends, not only will the lucky winners be happy, but we all will be satisfied with a useful backlog.
Here's GIF if interested.
First you need the data source which is a spreadsheet with the columns in the same order (until we refactor into src/sheet.js
to be more generic). Our spreadsheet looks like this
Next, we'll set up the code to read and present that data.
This is a pretty basic react app bootstrapped from create-react-app
. You just need npm or yarn (or parcel if you fancy).
git clone harley/santa-raffle
cd santa-raffle
yarn install
Just ask me for the src/config.js
file if we're working on the same sheet (we're likely are!)
We use Google Spreadsheet API, so you need to set up a project on Google APIs and fill in the clientId
as well as spreadsheetId
.
cp src/config.{,example.}js
ClientId is taken from https://console.developers.google.com/apis/credentials. Set up a project there and make sure to whitelist http://localhost:3000 (and other deployed domains later).
yarn start
and it should automatically launch http://localhost:3000
NOTE: don't think you need to deploy. Just make pull requests and I'll deploy for you. This project is deployed to raffle.tinyserver.info (surge knows that based on the gitignored CNAME file).
But if you want suggestions to roll your own, you can deploy the build folder to github page or surge or serve
it yourself.
yarn build
surge
# then make sure you point the santa-raffle/build path, not /santa-raffle path
Ideas? Look at the TODO section.
No special requirements. Either ask me to add as contributors or fork and make PRs.
- Add Sorting: by likes count, by complexity. Default ordering should probably be by Likes.
- Display if an issue has been solved or being solved
- Display link to solutions (WIP columns)
- Display Interested names. Even better: allow adding oneself to interested? Note: we don't have user id in the current OAuth scope.
- Display Complexity better
- Add TODO to this TODO
This project is licensed under the MIT License.