Extension:JsCalendar

The JsCalendar extension is based on YASEC extension (by Steffen Beyer). It additionally supports coloring (based on category or keywords), showing HTML snippets of event pages, finding event pages by regex, etc. However, unlike YASEC, it only supports MySQL/MariaDB. (PostgreSQL is not supported. Patches are welcome)

Usage
The following syntax will find all pages with names like  and display a calendar of these events:  prefix = Today_in_History/ suffix = dateFormat = F_j 

The value of  parameter is explained here: https://www.php.net/manual/en/datetime.createfromformat.php#refsect1-datetime.createfromformat-parameters

The following syntax will find pages like  and display a calendar:  titleRegex = ^([0-9]{4,4}/[0-9][0-9]/[0-9][0-9])_.* dateFormat = Y/m/d 

By default, pages in main namespace (articles) are shown. To use another namespace, use  parameter, for example (to find pages like "Template:04-13/WhatHappened"):  namespace = Template prefix = suffix = /WhatHappened dateFormat = m-j 

Events can be colored based on the category they are in. For example, categorycolor.Cat-related events = red categorycolor.Dogs = green

Events can be colored based on presence of some keyword within their wikitext. For example, keywordcolor.arctic = yellow keywordcolor.statistically = lightgreen

Instead of the page name, a HTML snippet of the first N symbols can be shown for each event page. To enable, use the following parameter: symbols = 500

Please see README.md for more details/examples.

Installation
For modern versions of MediaWiki (1.35+), use the following instruction:

Installation for older versions of MediaWiki
For MediaWiki 1.34, replace the above-mentioned "git clone" command with the following:

These versions may still receive security fixes (if any), but not new features.

Alternatives
Please see Calendars for the list of other calendar extensions.