A companion app for the mobile game Marvel Strike Force, which provides PvP team counters using React.js on the client side, Node.js on the server side, and Google Sheets as a data store.
Website: https://msfcounters.com
Wiki: https://github.com/bobbybaxter/msfcounters/wiki
Discord: https://discord.gg/eCnE48h
Patreon: https://patreon.com/saiastrange
yarn
server/.config.json
sheetId
- create a Google Sheet, Publish it, and grab the Sheet ID from the URLapiKey
- create a Google Service Account to get thisfirebaseDbURL
- create a Firebase database for thispatreonClientId
- create a Patreon Developer account for thispatreonClientSecret
- create a Patreon Developer account for thisserver/.env
- should be the same, as it's for development, but you'll need to supply the production variables to your Elastic Beanstalk serverserver/firebase-config.js
- create Firebase database and get from settingsserver/firebase-service-account.js
- get from Firebase settingsserver/google-sheets-service-account.js
- create at Google APIs -> Credentialssrc/.firebase.config.json
- get from Firebase settings.env
- at root for production variables.env.development.local
- at root for development variablesyarn run dev
Note: if you want to make a production build of this project, type yarn run build
. This will create a folder called build with all the minified code you need.
Github Pages (I've currently moved away from this, but the functionality should still work in this build):
yarn run deploy
origin gh-pages
ref, then delete the build folderClient:
yarn run client:deploy
package.json
to the name of your bucket (which will normally also be your domain name), like so:
"client:deploy": "yarn run build && aws s3 sync build/ s3://{yourS3bucketname}"
/*
so you don't have to wait ~24 hours for CloudFront's CDNs to distribute the changes to your bucket.Server:
eb deploy
eb init
) and created an Elastic Beanstalk instance for the server to run on (use eb help
for help).