Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

healeycodes/among-us-friends

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

201 Commits
201 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

among-us-friends

My blog post: Writing Software for an Among Us League


Node.js CI


I use this system to manage the Among Us league I play with my friends.

Features:

  • Elo rankings (w/ graphs)
  • Player pages
  • Achievements/trophy system
  • Seasons
  • Google Sheets as a datastore

Tech:

A Jamstack application which runs Express via Netlify Lambda.

The front-end is React via Create React App.

tested by Jest.


Win rates and loss rates, and an ELO graph


A player's trophy section


Google Sheets

Sheets should be named in the following format:

  • Season X — where X is an incrementing integer starting at 1

To add a season, edit seasons inside config.json. Append to the list of incrementing integers.


A Google Sheets file

Enter data starting at C4 downwards. The rows should be 14 cells long.

10 player slots (which should be left empty if you have less than 10), 2 slots for the impostors (the names are repeated from the player list), 1 slot for the winner ('crew' or 'impostor'), and 1 slot for the map short name.

E.g.

"andy" <-- player list
"ally"
"bayf"
"beans"
"keita"
"mads"
"roma"
"spon"
"gem"
"" <-- empty if you have nine players

"ally" -- impostors
"spon"

"crew" <-- game winner (crew, impostor)

"skeld" <-- map shortname (skeld, mira, polus, airship)

Deploy

This application is deployed by Netlify.

Set two environmental variables via the Netlify UI.

  • SHEETS_ID - the id in the URL bar.
  • SHEETS_API_KEY - an API key from Google Console.

Local Development

Create a file called .env inside back-end/ with the contents snapshot=true


Run both the back-end and the front-end.

cd back-end/ && yarn install && yarn dev

cd front-end/ && yarn install && yarn start


Tests

cd back-end/ && yarn test

About

🎮 An ELO and player tracking system for the game Among Us

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.