Hi! Sharing a new self-published third-party module, built per the developer guide and modules/custom.md — not asking for a merge, just making it findable for anyone who wants tennis on their display. Feel free to close after reading (or let me know if there's a better place to list third-party modules).
Repo: https://github.com/livetennisapi/inkycal-tennis (MIT, v0.1.0)

What it does
- Live matches (ATP/WTA/Challenger/ITF/juniors): per-set games, current points, a
• on the server, and a derived break-point BP marker on the colour layer (red on 3-colour panels; merged into black on B/W).
- Falls back to the upcoming-fixtures schedule when nothing is live (cached 6 h).
Install (as in the current dev docs)
wget inkycal_tennis.py into Inkycal/inkycal/modules/
- Add
Tennis = "inkycal.modules.inkycal_tennis.Tennis" to InkycalModuleImporter
settings.json config: {"api_key": "...", "tour": "all"} (plus the usual size/padding/fontsize)
The API key is free (no card) — 30 req/min, 100 req/day, so a ≥15-minute update_interval fits the free tier. Tests are fully mocked (no key needed) and CI runs against Inkycal main on 3.12/3.13.
Disclosure: I maintain the API behind it (livetennisapi.com), so the module will be kept in sync with any field changes.
Hi! Sharing a new self-published third-party module, built per the developer guide and
modules/custom.md— not asking for a merge, just making it findable for anyone who wants tennis on their display. Feel free to close after reading (or let me know if there's a better place to list third-party modules).Repo: https://github.com/livetennisapi/inkycal-tennis (MIT, v0.1.0)
What it does
•on the server, and a derived break-pointBPmarker on the colour layer (red on 3-colour panels; merged into black on B/W).Install (as in the current dev docs)
wgetinkycal_tennis.pyintoInkycal/inkycal/modules/Tennis = "inkycal.modules.inkycal_tennis.Tennis"toInkycalModuleImportersettings.jsonconfig:{"api_key": "...", "tour": "all"}(plus the usual size/padding/fontsize)The API key is free (no card) — 30 req/min, 100 req/day, so a ≥15-minute
update_intervalfits the free tier. Tests are fully mocked (no key needed) and CI runs against Inkycalmainon 3.12/3.13.Disclosure: I maintain the API behind it (livetennisapi.com), so the module will be kept in sync with any field changes.