A Java program for managing and analyzing fencing tournament data. Bout data is processed and used to generate a rating score/number for each fencer which changes depending on their wins and losses versus different skill level opponents.
- Parses and processes tournament data via CSV output files generated by my MS Excel fencing database.
- Computes ratings and win-rate statistics across all inputted events.
- Builds better-than-standard pools for tournaments using configurable rules.
- Exports reports and ledger summaries for tournament organizers.
src/– Java source code:Main.java,Ledger.java,Pools.java,Roster.java,Ratings.java,Winrate.java,Bouts.java,Fencer.java,Ansi.java.res/– Input data and reference files (CSV and text). Notable folders:Clubs/– club rosters and overrides.Ledgers/– per-tournament CSV ledgers (final brackets in CSV format).Rosters/– generated or sample rosters (post-pool results in CSV format).
bin/– compiled classes (target forjavac -d bin).lib/– third-party libraries (if any).
See the Java sources in src/ for implementation details.
- Java JDK 8 or newer
- Command-line shell (Windows
cmd/ PowerShell or Unix shells)
javac -d bin src/*.java
java -cp bin MainDepending on the code in Main.java, the program may accept file paths or mode flags. Check src/Main.java for argument details and examples.
- Place new tournament CSVs in
res/Ledgers/using the existing file format. - Club lists and overrides in
res/Clubs/. res/Rosters/can store generated pool rosters and exports.
If you add new data formats, update the corresponding parser in src/.
See file LICENSE.md.