Reading view

There are new articles available, click to refresh the page.

Wikis for Everyone: Bridging the Accessibility Gap at the 2026 Hackathon

Wikimedians discussing web accessibility at the Wikimedia Hackathon 2026
Italian wikimedians discussing web accessibility at the Wikimedia Hackathon 2026

Web accessibility is not merely a technical feature. It is a prerequisite for truly free knowledge. During the recent Wikimedia Hackathon 2026, held in Milan, we came together as a dedicated group hailing from Italy to confront a quiet yet persistent issue: the barriers that prevent visually-impaired individuals from fully engaging with Wikipedia and its sister projects.

Thus, Valcio, Daimona Eaytoy, and Piergiovanna Grossi (WMIT) led the unconference session “Wikipedia for Everyone: Closing the Accessibility Gap”, which served as both a wake-up call and a collaborative workshop. By examining how community-made templates and interface elements often fail our users, we aimed to transition from identifying problems to building sustainable solutions.

This is a short recap for those who missed it.

The Reality of the Digital Barrier

Home page for MediaWiki Accessibility Checker
Home page for MediaWiki Accessibility Checker

The session opened with a candid look at the current state of our interfaces. While MediaWiki provides a robust foundation, years of community-driven customisation have inadvertently introduced many accessibility violations. Key issues discussed included:

  • Missing Alt-Text: Images essential for understanding content often lack descriptions or alternative text which is readable by screen readers, assistive technologies that read out graphic content to visually impaired users.
  • The “HTML Wall”: Many tables and templates lack proper semantic markup, forcing text-to-speech tools to read out raw code rather than structured information.
  • Contrast and Colour: Numerous gadgets and banners still fall short of the WCAG 2.2 AA (a web-accessibility standard) minimum contrast ratios, rendering them invisible to users with colour blindness or low vision.

Measuring Missing Alt-Text

The unconference session also sparked a small follow-up experiment. CristianCantoro set out to measure how widespread the issue of missing alt-text is on Italian Wikipedia and Lombard Wikipedia, combining the Wikipedia HTML dumps provided by Wikimedia Enterprise with the XML dumps published by the Wikimedia Foundation. The initial results confirm the scale of the challenge: more than 90% of images used in Italian and Lombard Wikipedia articles lack alternative text.

This is not an isolated finding. In 2023, a team of researchers from Stanford University and Google Research presented a cross-lingual analysis of image accessibility across 108 Wikipedia language editions finding that, on average, only around 10% of images had alt-text. This research was presented at the 2023 edition of the Wiki Workshop.

These numbers are a reminder that missing alt-text is still an open and large-scale challenge across languages. If we want Wikipedia to be truly open to everyone, we need better tools, workflows, and community practices to help editors add alt-text and meaningful descriptions to images.

From Discussion to Action: The MediaWiki Accessibility Checker

Logo for MediaWiki Accessibility Checker
Logo for MediaWiki Accessibility Checker

To move from awareness to action, one of the session participants — Super nabla from the Indic MediaWiki Developers User Group — built a concrete solution during the hackathon itself. The tool, available on Toolforge, assists editors and developers in meeting accessibility standards: the MediaWiki Accessibility Checker. Try it out: https://accessibility-checker.toolforge.org/

Built on the industry-standard axe-core engine and Playwright, the tool is specifically adapted for the MediaWiki ecosystem. It allows editors and developers to (i) perform deep audits (queryable both from the frontend interface as well as from a dedicated RESTful API) based on WCAG 2.2 AA (and other standards) on any wiki URL, including project pages; (ii) generate professional reports in multiple formats, including PDF and Wikitext for easy sharing on-wiki; (iii) utilise a modern interface designed with the Wikimedia Codex design system, ensuring a seamless experience for contributors.

This tool represents a small yet important step forward in democratising accessibility auditing, allowing gadget authors — even those without formal expertise — to identify and rectify errors before they impact our readers.

A Legacy of “Wikiricci” and Community Care

Daimona Eaytoy with the WikiRiccio
Daimona Eaytoy with the WikiRiccio

The roots of this technical collaboration extend back to 2018 at itWikiCon in Como (Italy), where the “Officina” (the Italian Wikipedia’s technical project) was honoured for its quiet, essential labour, carried out by the smanettoni (hackers) — the tinkerers and wizards who operate behind the scenes to ensure the platform’s gears continue to turn. This community recognition is personified by the Wikiriccio (wiki hedgehog), a physical trophy whose travel history has become something of a legendary saga within the Italian community. Traditionally held in rotation, after years of near-misses, it finally found its way to Daimona Eaytoy during this hackathon, reminding us that accessibility work is also about human connections and shared care.

For us, this light-hearted tradition and award serve as a reminder: behind every accessibility tool or interface fix is a human connection, a shared community-based vision and history, and a commitment to “making the shop run” for the benefit of all users.

Next Steps and Community Involvement

The hackathon session was only the beginning. The outcomes of our session are being synthesised into a formal proposal in the Italian Wikipedia and a Phabricator task to help standardise CSS custom properties and automated linting workflows.

Yet, technology alone cannot solve a cultural challenge. We invite all UI/UX designers, developers, and experienced wiki-editors to join the effort. Whether you are improving the alt text on a high-traffic policy page or helping modernise an old template, your contribution ensures that Wikipedia remains truly accessible, enabling everyone to share in the sum of all knowledge.

A special thanks to the hackathon organisers and all the participants who shared their lived experiences; your insights are what drive these technical improvements forward.

Introducing the illumos Cafe: Another Cozy Corner for OS Diversity

illumos Cafe logo - a coffee cup with an illumos logo

Introducing the illumos Cafe: Another Cozy Corner for OS Diversity

From the BSD Cafe to illumos Cafe

The idea for this new project was born from the success of the BSD Cafe, an initiative I introduced to the world in July 2023, which received an incredibly positive response. Far more than I ever anticipated. The BSD community already had its well-established hubs: in the Fediverse, places like bsd.network, exquisite.social, and others were already thriving, not to mention all the forums, channels, and Reddit communities.

But in my vision, something was still missing: a hub of services with a positive spirit, built exclusively with open-source tools, where people could come to share, learn, and experience technology with a positive mindset. The BSD Cafe is therefore not just an instance, but a true Cafe - I’ll be speaking more about the BSD Cafe in detail at the next EuroBSDCon.

Why Another Cafe?

In a world increasingly dominated by centralized services under the control (or lack thereof) of the usual big players, it has become essential to create free, independent communities, devoid of the algorithmic and commercial controls that influence our overall experience. From day one, the BSD Cafe has embodied this spirit.

Linux is a good kernel, and there are excellent distributions based on it (some using the GNU userland, others only partially, like Alpine Linux), but it cannot and should not become a monoculture. The alternatives are extremely capable, and for many use cases - in my opinion and experience - they are even more suitable. BSD systems have served me exceptionally well for over 20 years, providing stability and security. At the same time, many other operating systems are renowned for their robustness, reliability, and the quality of their design and implementation.

Why illumos?

illumos is one of them. As the open-source descendant of OpenSolaris, it is an operating system known for its enterprise-grade stability and innovative technologies like ZFS, DTrace, and "zones". It was born from the solid foundations of Solaris and has evolved over time while remaining true to many of its core principles. I have always seen illumos and its distributions as kindred spirits to the BSDs, despite their differences. The philosophy is one of evolution without revolution, of guaranteeing long-term continuity and reliability rather than chasing the latest hype. This is precisely why, for some time now (and thanks in part to the inspiring posts by Joel Carnat, which further sparked my curiosity), I have been running OmniOS and SmartOS alongside my BSD-based setups for certain workloads.

However, there is very little information online about services running on them. So, a few months ago, I began to consider a new project: the illumos Cafe.

The illumos Cafe Project

The illumos Cafe is a project similar to the BSD Cafe (though perhaps less complex, at least initially). It shares the same spirit of positivity and inclusivity and aims to provide services running on illumos-based operating systems to demonstrate that there are no reasons not to use them. Just like with the BSD Cafe, diversifying the operating systems we use - even while using the same platforms - is fundamental to improving the reliability and resilience of the Internet. The Internet was born as a decentralized network, but for most people, it has sadly become just a tool to access the services of big players.

Community and Philosophy

But we want to connect. We want relationships with people, between people. We don't want algorithms. We don't want our data to be monetized by "us and our 65535 partners". We want a network that serves us, an OS that serves us - not an OS that just serves as a vehicle to store our data in "someone else's house". The illumos Cafe, therefore, aims to be a home for anyone interested in developing, using, or who is simply curious about illumos-based operating systems.

Technical Setup

As with the BSD Cafe, the entire setup will be documented. For now, it is very simple: there is a VM (running on FreeBSD and bhyve, on hardware I manage) where I have installed SmartOS. The physical host also runs the reverse proxy (in a jail). Inside the SmartOS VM, there are a series of zones:

  • Zone 1: nginx (Web Server) - Currently serving the project's homepage.

  • Zone 2: Mastodon (Social) - Hosting the Mastodon instance and its dependencies at https://mastodon.illumos.cafe.

  • Zone 3: PostgreSQL (Database) - The Mastodon database, on a dedicated zone.

  • Zone 4: Redis (Cache) - The Mastodon cache, on a dedicated zone.

  • Zone 5: snac (LX Zone) - Currently in an LX zone (Alpine) as I ran into some issues getting it to work in a native zone. It will be moved to a native zone as soon as I resolve them. It's serving the snac instance at https://snac.illumos.cafe

Media files are stored on an external physical server (running FreeBSD, the same one as the BSD Cafe, but in a dedicated jail) with SeaweedFS. I was able to compile and run SeaweedFS on illumos without any problems, but at the moment, I don't have a host with enough storage space for the media.

Available Services

More services will arrive over time. For now, two gateways to the Fediverse are already available:

Both instances share the same rules as the BSD Cafe. Positivity. Supporters, not haters. I want them to be places of enjoyment, not venting. Of friendship, not hate.

Registrations and Logo

Registrations for the Mastodon instance are now open, and the available themes are the default ones plus the colorful TangerineUI - whose orange hue echoes the illumos logo.

The project's logo was not generated by an AI. I made it myself by hastily sticking the illumos SVG onto a coffee cup. Basic, perhaps. But authentic.

Looking Ahead

The BSD Cafe will, of course, remain my primary home. But I want to bring illumos into the Fediverse and provide a home for anyone who wishes to share their interest in this excellent OS.

I will document the entire process, just as I did with Mastodon on FreeBSD, as it is a bit more intricate. Because in my dreams, I see Fediverse statistics showing instances spread fairly evenly across the major open-source operating systems. Because relying on a single OS, even if it's open-source, and ceasing to support the others is also a single point of failure.

Promoting events and WikiProjects

Editatona Mujeres Artistas Mexicanas 2024, Museo Universitario de Arte Contemporáneo, Mexico City, Mexico
Editatona_Mujeres_Artistas_Mexicanas_2024_10, ProtoplasmaKid

The Campaigns team at WMF has released two features that allow organizers to promote events and WikiProjects on the wikis: Invitation Lists and Collaboration List. These two tools are a part of the CampaignEvents extension, which is available on many wikis.

Invitation Lists

Product overview

Invitation Lists allows organizers to generate a list of people to invite to their WikiProjects, events, or other collaborative activities. It can be accessed by going to Special:GenerateInvitationList, if a wiki has the CampaignEvents extension enabled. You can watch this video demo to see how it works.

It works by looking at a list of articles that an organizer plans to focus on during an activity and then finding users to invite based on the following criteria: the bytes they contributed to the articles, the number of edits they made to the articles, their overall edit count on the wikis, and how recently they have edited the wikis. This makes it easier for organizers to invite people who are already interested in the activity’s topics, hence increasing the likelihood of participation.

With this work, we hope to empower organizers to seek out new audiences. We also hope to highlight the important work done by editors, who may be inspired or touched to receive an invitation to an activity based on their work. However, if someone does not want to receive invitations, they can opt out of being included in Invitation Lists via Preferences.

Technical overview

The “Invitation Lists” feature is part of the CampaignEvents extension for MediaWiki, designed to assist event organizers in identifying and reaching out to potential participants based on their editing activity.

Access and Permissions

  • Special Pages: The feature introduces two special pages:
    • Special:GenerateInvitationList: Allows organizers to create new invitation lists.
    • Special:InvitationList: Displays the generated list of recommended invitees.
  • User Rights: Access to these pages is restricted to users with the event-organizer right, ensuring that only authorized individuals can generate and view invitation lists.

Invitation List Generation Process

  1. Input Parameters:
    • List Name: Organizers provide a name for the invitation list.
    • Target Articles: A list of up to 300 articles relevant to the event’s theme.
      •  The articles will need to be on the wiki of the Invitation List.
    • Event Page Link: Optionally, a link to the event’s registration page can be included.
  2. Data Collection:
    • The system analyzes the specified articles to identify contributors.
    • For each contributor, it gathers metrics such as:
      • Bytes Added: The total number of bytes the user has added to the articles.
      • Edit Count: The number of edits made by the user on the specified articles.
      • Overall Edit Count: The user’s total edit count across the wiki.
      • Recent Activity: The recency of the user’s edits on the wiki.
  3. Scoring and Ranking:
    • Contributors are scored based on the collected metrics.
    • The scoring algorithm assigns weights to each metric to calculate a composite score for each user.
    • Users are then ranked and categorized into:
      • Highly Recommended to Invite: Top contributors with high relevance and recent activity.
      • Recommended to Invite: Contributors with moderate relevance and activity.
  4. Output:
    • The generated invitation list is displayed on the Special:InvitationList page.
    • Each listed user includes a link to their contributions page, facilitating further review by the organizer.

Technical Implementation Details

  • Backend Processing:
    • The extension utilizes MediaWiki’s job queue system to handle the processing of invitation lists asynchronously, ensuring that the generation process does not impact the performance of the wiki.
    • Jobs are queued upon submission of the article list and processed in the background.
    • The articles will need to be on the wiki of the Invitation List, and they can add a maximum of 300 articles.
  • Data Retrieval:
    • The extension interfaces with MediaWiki’s revision and user tables to extract the necessary contribution data.
    • Efficient querying and indexing strategies are employed to handle large datasets and ensure timely processing.
  • User Preferences and Privacy:
    • Users have the option to opt out of being included in invitation lists via their preferences.
    • The extension respects these preferences by excluding opted-out users from the generated lists.
  • Integration with Event Registration:
    • If an event page link is provided, the invitation list can be associated with the event’s registration data. This way, we can link their invitation data to their event registration data.

Collaboration List

Product overview

The Collaboration List is a list of events and WikiProjects. It can be accessed by going to SpecialːAllEvents,  if a wiki has the CampaignEvents extension enabled.

The Collaboration List has two tabs: “Events” and “Communities.” The Events tab is a global, automated list of all events that use Event Registration. It also has search filters, so you can find events by start and end dates, meeting type (i.e., online, in person, or hybrid), event topic, event wikis, and by keyword searches. You can also find events that are both ongoing (i.e., started before but continue within the selected date range) and upcoming (i.e., events that start within the selected date range).

The Communities tab provides a list of WikiProjects on the local wiki. The WikiProject list is generated by using Wikidata, and it includes: WikiProject name, description, a link to the WikiProject page, and a link to the Wikidata item for the WikiProject. We aim to produce a symbiotic relationship with WikiProjects, in which people can find WikiProjects that interest them, and they can also enhance the Wikidata items for those projects, which in turn improves our project.

Additionally, you can embed the Collaboration List on any wiki page, if the CampaignEvents extension is enabled on that wiki. To do this, you transclude the Collaboration List on a wiki page. You can also choose to customize the Collaboration List through URL parameters, if you want. For example, you can choose to only display a certain number of events or to add formatting. You can read more about this on Help:Extension:CampaignEvents/Collaboration list/Transclusion.

With the Collaboration List, we hope to make it easier for people to find events and WikiProjects that interest them, so more people can find community and make impactful contributions on the wikis together.

Screenshot of the Collaboration List
Screenshot of the Collaboration List

Technical Overview: Events Tab of Collaboration List

  • Purpose: Displays a global list of events across all participating wikis.
  • Data Source: Event data stored centrally in Wikimedia’s X1 database cluster.
  • Displayed Information:
    • Event name and description
    • Event dates (start and end)
    • Event type (online, in-person, hybrid)
    • Associated wikis and event topics
  • Search and Filters:
    • Date range (start/end)
    • Meeting type (online, in-person, hybrid)
    • Event topics and wikis
    • Keyword search
    • Ongoing and upcoming event filtering
  • Technical Implementation:
    • The CampaignEvents extension retrieves event data directly from centralized tables within the X1 cluster.
    • Efficient SQL queries and indexing optimize performance for cross-wiki data retrieval.

This implementation ensures quick access and easy discoverability of events from across Wikimedia projects.

Technical Overview: Communities Tab of Collaboration List

  • Purpose: Displays a list of local WikiProjects on the wiki.
  • Data Source: Dynamically retrieved from Wikidata via the Wikidata Query Service (WDQS).
  • Displayed Information:
    • WikiProject name
    • Description from Wikidata
    • Link to the local WikiProject page
    • Link to the Wikidata item
  • Performance Optimization:
    • Query results from WDQS are cached locally using MediaWiki’s caching mechanisms (WANObjectCache).
    • Cache reduces repeated queries and ensures quick loading times.
  • Technical Implementation:
    • The WikimediaCampaignEvents extension retrieves data via SPARQL from WDQS.
    • The CampaignEvents extension renders the data on Special:AllEvents under the Communities tab.
  • Extension Communication:
    • The extensions communicate using MediaWiki’s hook system. The WikimediaCampaignEvents extension provides WikiProject data to the CampaignEvents extension through hook implementations.

This structure enables efficient collaboration between extensions, ensuring clear responsibilities, optimized performance, and simplified discoverability of WikiProjects.

Registration & Scholarship Application for Wikimedia Hackathon 2024 is Open! 

You might have already heard the buzz: the Wikimedia Hackathon is gearing up for an incredible event in Tallinn, Estonia, from May 3rd to 5th, 2024. Now, we’re thrilled to announce that the Registration form, which also includes an optional Scholarship application, is officially open until Friday January 5th 2024.

Participation in the in-person Wikimedia Hackathon in Tallinn is contingent upon registration. The registration portal will remain accessible until we hit our venue’s capacity, which is approximately set at 220 participants. Here’s the exciting part: the event itself is entirely free of charge ensuring that everyone has an opportunity to join us for this fantastic experience.  Please note that participants are required to make individual travel arrangements unless they have been awarded a scholarship. For comprehensive details about the scholarship process, committee, and eligibility criteria, please visit the dedicated page.

Link to Registration & Scholarship Application: pretix.eu/wikimedia/wmhackathon2024/ (For detailed instructions, please visit the Mediawiki page)

The registration and scholarship application form is powered by Pretix, an open-source third-party service, which may introduce additional terms. If you have inquiries regarding privacy and data handling, consult the privacy statement for more information. 

Seize the Opportunity: Apply Now!

 Register, apply for a scholarship, and join the vibrant technical community dedicated to making a difference and shaping the future of Wikimedia’s Technical Ecosystem. 

Stay Connected: Join the Conversation

As the excitement builds, stay connected with the Wikimedia community. Engage in discussions, share your ideas, and connect with fellow participants on the talk page and explore the various channels mentioned here. Follow the event updates, announcements, and get ready for an enriching experience that goes beyond coding — it’s about building connections and leaving a lasting impact on the Wikimedia Technical projects. 

Should you have any questions or encounter issues related to the registration form or scholarship application, don’t hesitate to reach out to the organizing team. You can connect with us via the talk page or through email at hackathon@wikimedia.org. We’re here to support you every step of the way!

Wikimedia Hackathon 2024 is Here: Mark Your Calendar 🎉

We are thrilled to share the exciting news that the 2024 Wikimedia Hackathon is scheduled to unfold in the captivating city of Tallinn, Estonia, from May 3rd – 5th 2024!

A Celebration of Innovation and Collaboration

The Wikimedia Hackathon is not just an annual hacking event, it’s a celebration of innovation and collaboration, uniting the global Wikimedia technical community in a dynamic gathering focused on connection, innovation, and exploration. At this event, technical contributors hailing from all corners of the globe converge with a shared mission: to enhance the technological infrastructure and software that underpins and empowers Wikimedia projects.

The theme for this edition aligns with last year’s, emphasizing the gathering of individuals who have a track record of contributing to the technical aspects of Wikimedia projects. We’re looking for those who are well-versed in navigating the technical ecosystem and are adept at working autonomously or collaborating effectively on projects.

How to Get Involved

Participating in the Hackathon is easy! Simply mark your calendar for May 3rd – 5th, 2024, and register to attend. Stay tuned for registration and scholarship details, which will be announced on Monday November 27th 2023 on our MediaWiki page and social media channels.

Spread the Word!

Help us make the Hackathon a massive success by spreading the word. Share this announcement with community members,, and anyone who shares your passion for Wikimedia Technical Projects. Let’s make this gathering of brilliant minds an unforgettable experience!

❌