Meta:Wikimedia CH/Cronos/About
Cronos 📅 is yet another calendar to create and discover Wikimedia events. Peculiarity: it works 100% on-wiki! The barrier between a wiki-user and a Cronos developer is minimal, as everything is really on-wiki, so events can be created and edited also with VisualEditor, and the views can be customized just like a template.
Cronos has backward compatibility with the events already-published inside the "french calendar".
Cronos Month View
[edit]Cronos events can be shown in multiple ways, including a view of the current month.
💡 To show this calendar in any Meta-page, see the template {{Cronos month}} and its options!
| October | ||||||
|---|---|---|---|---|---|---|
| Monday | Thursday | Wednesday | Thursday | Friday | Saturday | Sunday |
| 12 | 13
Permanence WikiStub 17:00 |
14 | 15 | 16 | 17
Atelier Cimade 13:30 |
18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30
Soirée pyjama Wikidata 17:00 |
31
Auckland Wiki meetup 10:00 WikiPermanence 10:00 |
|
| November | ||||||
| Monday | Thursday | Wednesday | Thursday | Friday | Saturday | Sunday |
| 01 | ||||||
| 02 | 03
Permanence WikiStub 17:00 |
04 | 05 | 06
ItWikiCon 2026 15:00 🧑🤝🧑in person |
07
ItWikiCon 2026 15:00 🧑🤝🧑in person |
08
ItWikiCon 2026 15:00 🧑🤝🧑in person |
Cronos List View
[edit]The same events can be shown using a nice list using the template {{Cronos list}}.
Example result:
| When | Event | Where | Category | |
|---|---|---|---|---|
| 13/10/2026 | 17:00 | Permanence WikiStub | Europe, France, Grand Est and Strasbourg | Event |
| 14/10/2026 | 19:00 | Wiki'Live - Le Livre blanc de … | Europe and France | Event |
| 17/10/2026 | 13:30 | Atelier Cimade | Europe, France, Île-de-France and Nanterre | Event |
| 17/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 18/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 19/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 19/10/2026 | 17:30 | Rencontre mensuelle Wikimédia … | Europe, France, Auvergne-Rhône-Alpes and Lyon | Event |
| 20/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 21/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 22/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 23/10/2026 | 16:00 | Wikidata: Query Service Days | Online | Event |
| 26/10/2026 | 09:30 | Editathon Cartes imaginaires -… | Europe, France, Île-de-France and Paris | Event |
| 27/10/2026 | 16:30 | Edit-a-th♀n «Für mehr Sichtbar… | Zürich | Wikimedia CH initiatives |
| 30/10/2026 | 17:00 | Soirée pyjama Wikidata | Europe, France, Île-de-France and Paris | Event |
| 31/10/2026 | 10:00 | Auckland Wiki meetup | Oceania, New Zealand and Auckland | Event |
| 31/10/2026 | 10:00 | WikiPermanence | Europe, France, Nouvelle-Aquitaine and Bordeaux | Event |
| 31/10/2026 | 14:00 | Atelier médiathèque Baldwin | Europe, France, Île-de-France and Paris | Event |
| 31/10/2026 | 14:00 | Wikipermanence la à la médiath… | Europe, France, Brittany and Brest | Event |
| 03/11/2026 | 17:00 | Permanence WikiStub | Europe, France, Grand Est and Strasbourg | Event |
| 05/11/2026 | 18:00 | Permanence Wiktionnaire au KoT… | Europe, France, Auvergne-Rhône-Alpes and Lyon | Event |
| 06/11/2026 | 15:00 | ItWikiCon 2026 | Vezia (TI, CH) | Wikimedia CH initiatives |
| 07/11/2026 | 14:00 | Wikipermanence à la Villette | Europe, France, Île-de-France and Paris | Event |
| 07/11/2026 | 15:00 | ItWikiCon 2026 | Vezia (TI, CH) | Wikimedia CH initiatives |
| 08/11/2026 | 14:00 | Another Story au Festival Auge… | Europe, France, Grand Est and Strasbourg | Event |
| 08/11/2026 | 15:00 | ItWikiCon 2026 | Vezia (TI, CH) | Wikimedia CH initiatives |
History
[edit]
This project was incubated by Wikimedia CH in 2019 and developed as part of the WMCH Tech Boosts.
Features
[edit]We started working on Cronos collecting many experiences from a lot of already existing "wiki calendars" scattered around the wiki-world but that never took off for some reasons.
Cronos will not save the world but it brings interesting features which make it somehow unstoppable.
- MediaWiki and Wikimedians friendly
- We have built Cronos over well-known and massively-supported MediaWiki features accessible to as many Wikimedians as possible.
- → We have not invested in another MediaWiki extension. Did you know in this moment we have 5+ MediaWiki calendar extensions never deployed in Wikimedia projects?
- → Example: mw:Extension:JsCalendar: not supported by any Wikimedia project
- → Example: mw:Extension:MsCalendar: unmaintained
- → Example: mw:Extension:Calendar-Wikivoyage: not supported by Wikivoyage anymore and by any other Wikimedia project
- → Example: mw:Extension:Semantic Result Formats: not supported by any Wikimedia project
- → Example: mw:Extension:Cargo: not supported by any Wikimedia project
- → Example: mw:Extension:SimpleCalendar: not supported by any Wikimedia project
- → Example: mw:Extension:WikiCalendar: not supported by any Wikimedia project
- ...
- → and we have not continued one of these extensions. This because an extension needs constant code review and it usually involves slow "deployment trains" slowing down development and adoption. Moreover, extensions are usually a play for a small group of very experienced developers. PHP extensions has high risk of introducing security issues, high risk of abandonment, as few are activated every year and many were de-activated forever. Think about mw:Structured Discussions (2012-2017). See the 2800 pages inside mw:Category:Archived extensions, etc.
- → We didn't invested in a MediaWiki gadget because they must be edited by a sysop or an interface admin. Again we decided that would be a game for few people and we preferred something more accessible to the community.
- → We invested in Lua (mw:Extension:Scribunto) because it's available in all Wikimedia projects, and core on-wiki features are based on Lua, including probably millions of templates and pages (e.g. just look at the w:Template:Cite and all variants, made in Lua).
- → Lua is a sandboxed technology in the hands of the whole community, since it can be tested by anybody with just some technical knowledge and without any whatsoever privilege. With Lua we designed a Calendar that, if you want, can be also improved by anonymous users without security implications. Something that will be never be obtainable with a gadget or an extension.
- Accessibility
- Cronos was developed with accessibility in mind while being still attractive. We tried to achieve this goal avoiding to rely too much on content generated by JavaScript and preferring instead the generation of clean HTML documents server-side. As the result of these choices we hope blind people will be able to benefits from Cronos even with their very particular textual readers. Well, followed by hackers who still use Lynx as well as that kind of security enthusiasts who appreciate the NoScript Security Suite, etc. Yes, it will work on your very very old device. Also note that a static HTML content will help in spreading events better through all search engines.
- Interoperability
- Cronos was designed to do not rely on a private database, so, events are already accessible, already archived, already part of Wikimedia Dumps, so, data is not gatekeeped by missing APIs.
- We provide a Lua API to easily get events in a date range. Module:Cronos, to easily plot the events as you want.
- Archiviation
- We are Wikimedians and we are here to stay, but many calendars are designed to do not keep track of events as long as possible.
- → We designed Cronos to store an Event also forever, to check it again for historical purposes.
- → We designed Cronos to do not need an archiving process even lasting 100 years and having 100 Events a day.
- → Archiviation just works using standard technologies like categories (e.g. Category:Cronos events by year). Again something well-known and in the hands of the community.
- → A Cronos Event is designed to keep a permalink. When you save it on your wiki, that is already in the final place (e.g. Meta:Cronos/Events/2020-11-27)
- Scalability
- We don't scale well vertically (e.g. do not try to store thousands of events happening in a single day), but we scale very well horizontally (e.g. it's not a problem if we have 10000 years of historical events), so, we probably scale better than other on-wiki calendars 😛
- → We designed Cronos to store data in the wiki itself without the need of a "monolitic page" (e.g. unlike Events calendar/events.json, which needs recurring purge, with consequent loss of archived events). Thanks to basic MediaWiki features we can store events, forever, and with pleasant wiki pages like Meta:Cronos/Events/2020-11-27 as single source of data, easy for humans and decent enough for machines.
- → We designed Cronos without the risk of becoming bigger and bigger and slower over time. It absolutely does not matter if you create 25 events a day for 50 years: visiting the monthly calendar will be just as fast as the first day.
- → We achieved these goals avoiding an on-wiki monolithic database (like a JSON page).
- → Whatever the number of events, the monthly view is supposed to cause
31/500expensive parser function count - as you can see while inspecting this page. - Filter by Date
- Filtering by date should be easy by default. This is a basic feature by {{Cronos month}} and {{Cronos list}}. You can easily create pages about "recently past events" or "next events" for specific topics.
- Filter by Date and Tag
- Only interested in hackathons? Filter by it. This is a basic feature by {{Cronos month}} and {{Cronos list}}.
- What if an event was not tagged correctly? You can just edit that event and tag it correctly, as everything is on-wiki.
- No Need of Bots
- No bots are needed for the basic maintenance of the calendar. When you save an event, you see it up-to-date even if all Wikimedia bots are stopped for an incident in Toolforge. Bots are not needed to archive events, as events are already in their final destination.
Disadvantages
[edit]- Public as default
- We do not support private events. Do not create events if these should not be published on Meta-wiki.
- 🤓 Anyway this does not really look like a disadvantage in the Wikimedia world.
- 💡 Workaround: manage private data externally, for example using an external link to your Pretix or something.
- Not Hyperscaler
- In the rare case that kittens will start creating 3,000 events in a single month, and if you would like to list all these 3,000 recent events in a single wiki page, well, that could push MediaWiki at its limits (as well as humans).
- 🤓 Anyway wait... what? Do you really want to show 3000 recent events in a single page? This sounds pretty much nonsense, isn't it? So, not really a practical disadvantage.
- 🤓 We believe we will have no problems if less than 100 events are created every day, forever.
- 💡 In case of this nonsense hypothetical situation (3,000 events a month), just enjoy the options in the template {{Cronos list}} to show a reduced amount of recent days. The default is to suggest 31 days but is just a default and you have full control.
Support and Team
[edit]Public ideas, feature requests, bug reports, can be discussed in Wikimedia Phabricator on this workboard:
If you have a private topic or if you are not yet comfortable with Phabricator, you can write an email here:
- support
wikimedia
ch
These are the users who may interact with you from the above channels:
- User:Ilario (WMCH) – project responsible
- User:ValerioBoz-WMCH – lead developer activated by Ilario (WMCH Tech Boosts)
Thanks also to these past contributors who participated in the past. Some of these could also be re-activated if needed.
- User:Flor WMCH – coordination and quality assurance
- User:Nicolas NALLET – frontend developer activated by Ilario