Skip to content

klucon/com_joomleague

Repository files navigation

⚽ JoomLeague for Joomla 6

A complete sports league & competition management suite for Joomla 6.

Manage leagues, seasons, clubs, teams, players, fixtures, results, standings, statistics and more β€” all from a single, modern Joomla 6 component.


Latest release Build License

Joomla 6 PHP 8.1+ Languages Last commit Issues Stars


πŸ”— Quick links

Website Live Demo GitHub Wiki


πŸ“– About

JoomLeague is a full-featured sports management system for the Joomla 6 CMS. Whether you run a single football club, a regional league, or a multi-division tournament, JoomLeague gives you everything you need to publish a rich, always up-to-date sports website β€” no third-party services required.

The package has been rebuilt from the ground up for Joomla 6, using a modern namespaced MVC architecture, tighter security, and a clean, responsive frontend.

πŸ‘€ See it in action: joomleague.klucon.cz β€” a live demo available in English, Czech and German.


✨ Features

πŸ† Competition management

  • Sport types, leagues, seasons and competition projects
  • Clubs, teams and people (players, staff, referees)
  • Rounds, matches, results and squad rosters
  • Event types, playing positions and statistics
  • Playgrounds / stadiums and tournament trees (brackets)

πŸ“Š Frontend for your visitors

  • Project, team, club, person, playground and referee pages
  • League standings, results and combined results/standings views
  • Result matrix with full parity β€” played, upcoming, cancelled and forfeited matches, with division grouping
  • Smart schedule β€” switch between by round and by date, plus all / home / away filtering for teams
  • Rich match detail pages and player profiles with photo, contact details and full match history
  • Rivals head-to-head team comparison
  • Event, statistics and team-statistics rankings

🎯 Engagement & integrations

  • Prediction game β€” tipping competitions with automatic score recalculation and tipster leaderboards
  • iCal calendar feed with one-click subscription for Google, Apple, Outlook.com and Office 365
  • {jlmatch} content shortcode to embed any match directly inside an article
  • Native Joomla Custom Fields support for clubs, teams and people
  • Country flags & picker with a built-in lookup of 254 countries
  • Smart Search integration for site-wide match & person indexing

🧩 Included extensions

The package ships as a single installable bundle containing the component, 16 site modules and 5 integration plugins (see What's included).

πŸ”’ Built for production

  • Access-control (ACL) and record ownership checks throughout
  • Safe HTML filtering on user-supplied content
  • Multilingual: English, Czech and German
  • Signed, verifiable releases via the Joomla update server (SHA-256 package integrity)

βœ… Requirements

Requirement Version
Joomla 6.x
PHP 8.1 or newer
Database MySQL 8.0+ / MariaDB 10.4+

πŸš€ Installation

  1. Download the latest package ZIP from the Releases page.
  2. In your Joomla administrator, go to System β†’ Install β†’ Extensions.
  3. Drag & drop the ZIP onto the Upload Package File area.
  4. Open Components β†’ JoomLeague from the admin menu and start building your league. πŸŽ‰

Once installed, JoomLeague registers a Joomla update site, so future versions can be installed with one click from System β†’ Update β†’ Extensions.


πŸ“¦ What's included

Component
  • com_joomleague β€” administration & frontend
16 site modules

mod_joomleague_ranking Β· mod_joomleague_results Β· mod_joomleague_matches Β· mod_joomleague_eventsranking Β· mod_joomleague_statranking Β· mod_joomleague_teamstats_ranking Β· mod_joomleague_sports_type_statistics Β· mod_joomleague_teamplayers Β· mod_joomleague_teamstaffs Β· mod_joomleague_calendar Β· mod_joomleague_birthday Β· mod_joomleague_randomplayer Β· mod_joomleague_playgroundplan Β· mod_joomleague_navigation_menu Β· mod_joomleague_ticker Β· mod_joomleague_logo

5 integration plugins
  • content/joomleaguematch β€” the {jlmatch} match shortcode
  • content/joomleagueperson β€” person embedding
  • extension/joomleagueesport β€” e-sport extension
  • finder/joomleague β€” Joomla Smart Search indexing
  • quickicon/joomleague β€” admin control-panel quick icon

🌍 Languages

JoomLeague ships fully translated in:

πŸ‡¬πŸ‡§ English (en-GB) πŸ‡¨πŸ‡Ώ ČeΕ‘tina (cs-CZ) πŸ‡©πŸ‡ͺ Deutsch (de-DE)

Translations cover the component, all modules and plugins on both the site and administrator side.


πŸ—ΊοΈ Roadmap

Actively in development for upcoming releases:

  • Modernised menu-item setup β€” no more typing raw IDs:
    • dropdown pickers for lookups (project, club, team, round, playground, division…)
    • searchable modal pickers for people and matches, even across thousands of records
  • Required target fields β€” menu items can't be saved without a selected target
  • Graceful "not found" handling for menu items that point to missing records
  • Completion of the remaining frontend view rewrites (upcoming match, club detail, team statistics and additional rankings)
  • Continuous responsive polish across mobile and desktop

πŸ“š Documentation

Full documentation lives in the GitHub Wiki, including frontend view guides and configuration references.


🀝 Contributing

Contributions, bug reports and feature requests are welcome!


πŸ› οΈ Building from source

The source tree keeps each extension unpacked for development. To build the installable package (requires Python 3):

python3 build/package.py

This produces the child-extension ZIPs and the final package in dist/.


πŸ“„ License

Released under the GNU General Public License v2.0 or later.


πŸ‘€ Author

OndΕ™ej Klučka 🌐 klucon.cz Β· βœ‰οΈ info@klucon.cz

⭐ If JoomLeague helps your club or league, consider starring the repository! ⭐

Website Demo GitHub

About

JoomLeague 6.x package for Joomla

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors