Skip to content
Matthew Pfister edited this page Apr 6, 2020 · 23 revisions

Welcome! So you're looking for a "free" magic the gathering league manager, huh? Well you've come to the right place. Don't worry about the quotes around free, you don't have to pay anything to get all the parts to this app. Everything is open source. However, depending upon how many players you have accessing the league manager, on a daily basis, will determine the bill you get from AWS. Don't worry I'll go through how to build everything. It's really easy. Just some light reading and a few lines in the terminal and your there.

However I know the terminal will scare people, but this app is free, so it shouldn't surprise you that some assembly is required. Albeit as it may, if it does, well then maybe you should just drop off here...

...You stayed! Yay! Let's get started.

Application Architecture

The application is split up in to four different parts: the infrastructure project, the web/FE, the API/BE (which is a collection of micro services), and the service SDK. These four domains work together so they'll need to be built, and deployed together. Don't worry, I've got some code to do most of the heavy lifting for you. You can find all the repositories with the appropriate code below.

Getting Started:

If you just want to get up and running, and not worry about all the code, don't fret. I included a script in this repository that you can run that will build out your AWS infrastructure and resources. When the script finishes you should be able to navigate to your website and start using it. To run the script just run the following command in a terminal of your choosing:

yarn get-started

Helping out:

If you get the itch to help, or you feel like you have an idea to improve the site, great! However, I'm going to have to ask you to fork the repo. That way you can have your own copy, and when you feel your changes are ready, you can merge it back in to the original. This is to avoid having a million branches on a single repo, and for you to have a copy of those changes even if they don't make it back in.

NOTE: You can use the links above under the architecture section to navigate to all the repositories you will need to fork.

To get forking, do the following:

  1. Click the fork button, in the top right corner of the repo's GitHub page, that looks like the image below:

fork-btn

  1. After clicking the button, a modal should appear asking you where you would like to fork the project too. Click on the desired account you want it copied under.

fork-modal

  1. Once you've cloned all the repositories, open up a terminal of your choosing, and run the following command:
yarn get-helping
  1. Once the script finishes your AWS dev environment will be built out, and you'll have all your repositories cloned locally. Feel free to start navigating through the code! Happy programming!

Clone this wiki locally