A high-performance, feature-rich league scheduling library.
- at least Swift 6.2
- 'Fair' scheduling
- Balancing times, locations, and home/away allocations
- Multiple divisions
- Back-to-back matchups
- Flexible game gaps
- Matchup and travel durations
- Time & location availability
- Bye weeks
- Separate game day, division and team settings
- Fast, scalable schedule generation
- Protocol Buffers
Swift Package Manager
- Add the dependency to your project:
.package(url: "https://github.com/RandomHashTags/league-scheduling", exact: "0.10.0")- Use the
LeagueSchedulingproduct in your target:
.product(name: "LeagueScheduling", package: "league-scheduling")-
Get your hands on a
LeagueRequestPayload(protobuf) with the settings you want- Supports
Codableout-of-the-box to make it easy
- Supports
-
Call
generate()on the request payload -
Hook up the response to your server/front-end
This project is owned and maintained by Evan Anderson. All contributions are welcome under the terms of the AGPLv3.