Amalgamation is a tournament bracket for television panels.
The goal of this project was to create passive software that runs on television panels capable of showing live tournament bracket data. Almost all modern e-sports tournaments use digital tournament brackets as opposed to the old-fashioned whiteboards or tackboards. For digital tournament brackets, a nice web-based application for hosting these called Challonge is commonly used by tournament organizers.
Using Challonge to store tournament data is convenient and works well, but becomes less convenient for tournament attendees who want to download and analyze live tournament data. Most attendees or outside observers will use their small smartphone screen to load up the data-dense Challonge website, or ask the person sitting next to them about the current standings and statistics. Amalgamation is a solution to this problem; presenting attendees with a constantly updating outline of live tournament results.
Amalgamation is written in pure Swift and is designed to work on AppleTV devices. However, the code is generic enough to work on any iOS-based platform, including iPhone and iPad. The code contains a full Swift-based implementation of the Challonge API, and convenient classes to download and observe tournament match data.
The source code for this project is freely available and distributable. You can download it here. Note: if you want to use this code with a live Challonge server, you must request your own API key from Challonge and edit ChallongeServer.swift
to include this key.
You can watch a demonstration video of the software here.