This is an application that integrates with GitHub Projects for seamless import of product backlogs into a UI for easy sprint estimation. Scrum-Poker will watch select repos after the app is installed to a user's GitHub (user acct, org acct, or repo)
- To test this, Scrum Poker is currently installed on this scrum-poker-test repository
- Please clone down that repo and use it for testing
- In your terminal:
git clone https://github.com/hotfix-studios/scrum-poker.git
cd scrum-poker
npm i
- To gain access to application code you will need to be granted permission from @colinwilliams91 or @bryanpburnside. (contact them via email from respective GH profiles)
- Change the
local.env
file name to.env
- Visit the #🔐-op-credentials channel inside
🦺-GH-SCRUM-POKER
region and plug in the following values:
APP_ID="..."
WEBHOOK_SECRET="..."
CLIENT_ID="..."
INSTALLATION_ID="..."
PRIVATE_KEY="..."
NODE_ENV="development"
PORT="..."
WSS_PORT="..."
WEBHOOK_PATH="..."
- In root of
scrum-poker
- Make sure your branch is up to date:
- This will fetch current remote main and merge into your feature-branch
# fetch and merge remote main into your feature branch
git pull origin main
# Install packages if needed
npm i
- Build and run:
# Redirects event payloads from our proxy to our app
npx smee -u https://smee.io/hcbsiedRHAM0Aka3 -t http://localhost:3000/api
# compile TypeScript files to JavaScript files in `./dist` so that Node can run and kick off Node server
npm run dev
- Inside your IDE (scrum-poker project)
- Spin up Proxy Webhook Watch Server
npx smee -u https://smee.io/hcbsiedRHAM0Aka3 -t http://localhost:3000/api
- Spin up Scrum Poker server locally
npm run server
- Make changes for Event you want to test to this scrum-poker-test repository
- This will most likely be a change in this repository's GH GUI (issue comment, PR request, etc.)
- Scrum Poker is installed to and watching that repository
- Navigate to https://smee.io/hcbsiedRHAM0Aka3 in your web browser
- You should now see the JSON Payload for the event you are testing with all information from GH Rest API
- If you have deleted or renamed any files:
- This will delete old
dist
and re-compile with up-to-date.ts
files...
- This will delete old
# If Powershell Terminal, from root
.\scripts\build-clear.ps1
# If Bash/ZSH Terminal, from root
./scripts/bash-build-clear.sh
- If you want to clean out
node_modules
and reinstall them:- This is good if you get a blinking terminal, or a good first step in debugging weird issues in general...
# If Powershell Terminal, from root
.\scripts\packages-clear.ps1
# If Bash/ZSH Terminal, from root
./scripts/bash-packages-clear.sh
npm i
npm run start
- Exposed API/Query methods will follow these patters (to designate what they are targeting):
REST/CRUD
//# ###############
//# # REST/CRUD ###
//# ###############
//# USE:
//# # - Create...
//# # - Find...
//# # - Update...
//# # - Delete...
//# ###############
HTTP COMMUNICATION
//# ##################
//# # HTTP ROUTES ####
//# ##################
//# USE:
//# # - Post...
//# # - Get...
//# # - Put/Patch...
//# # - Delete...
//# ###############