# MediaWiki SCSS library

> former MediaWiki extension, which is now a standard PHP/Composer library that provides a ResourceLoader module to MediaWiki capable of compiling SCSS

**Wikidata**: [Q124366031](https://www.wikidata.org/wiki/Q124366031)  
**Source**: https://4ort.xyz/entity/mediawiki-scss-library

## Summary
The MediaWiki SCSS library is a standard PHP and Composer-compatible library designed to compile SCSS (Sassy CSS) for MediaWiki. Although it originated as a MediaWiki extension, it evolved into a standalone software library that integrates with MediaWiki's ResourceLoader module. It is currently developed and maintained by Professional Wiki.

## Key Facts
- **Classification:** It is a free software library (formerly a MediaWiki extension) written in PHP.
- **Primary Function:** Provides a ResourceLoader module for MediaWiki capable of compiling SCSS.
- **Developer:** Originally developed by Stephan Gambke (2018–2020); maintained by Professional Wiki since April 16, 2020.
- **Programming Language:** PHP (specifically requires PHP 8.1+ for version 5.0.0).
- **Dependencies:** Requires MediaWiki version 1.43 or higher (as of version 5.0.0).
- **Source Repository:** Hosted on GitHub at `github.com/ProfessionalWiki/SCSS`.
- **License:** Distributed as free software (Wikidata ID: Q27016754).
- **Aliases:** Also known as `Library:SCSS`, `Extension:SCSS`, and `SCSS`.

## FAQs
### Q: Is the MediaWiki SCSS library an extension or a library?
A: It is currently a standard PHP/Composer library. While it was formerly a MediaWiki extension, it transitioned into a library architecture, noted as version 2.0.0, to better integrate with modern development workflows.

### Q: Who creates and maintains the MediaWiki SCSS library?
A: The library was originally created by developer Stephan Gambke. As of April 16, 2020, it is maintained by Professional Wiki, a provider of enterprise wiki software solutions based in Berlin, Germany.

### Q: What is the function of the SCSS library in MediaWiki?
A: The library provides a ResourceLoader module that allows MediaWiki to compile SCSS (a CSS preprocessor syntax) into standard CSS, enabling more advanced styling techniques for wiki skins and extensions.

### Q: What are the technical requirements for the current version?
A: According to documentation for version 5.0.0, the library requires PHP version 8.1 or higher and MediaWiki version 1.43 or higher.

## Why It Matters
The MediaWiki SCSS library plays a crucial role in the modernization of MediaWiki user interfaces. By enabling SCSS compilation within MediaWiki's ResourceLoader, it allows developers to utilize advanced CSS features such as variables, nesting, and mixins when creating skins or extensions. This capability streamlines the development process and improves the maintainability of complex stylesheet code.

The transition from a simple extension to a standard PHP/Composer library marked a significant maturation of the tool. This shift aligns with broader industry standards in PHP development, allowing for easier dependency management and integration into professional continuous integration pipelines. By supporting modern PHP versions (8.1+) and recent MediaWiki releases, the library ensures that wiki administrators and developers can maintain up-to-date, secure, and visually appealing wiki environments without being locked into legacy coding practices.

## Notable For
- **Architectural Transition:** Distinct for evolving from a `MediaWiki extension` into a `standard PHP/Composer library` (starting with version 2.0.0), reflecting a shift towards modern dependency management.
- **ResourceLoader Integration:** Uniquely provides a bridge between SCSS compilation and MediaWiki's native ResourceLoader performance optimization system.
- **Enterprise Backing:** Distinguished by its maintenance under Professional Wiki, an enterprise software company, ensuring professional-grade support and updates.
- **Active Development:** Maintains an active release schedule with versions supporting the latest stable releases of PHP and MediaWiki.

## Body

### Development History
The SCSS library was initially developed by **Stephan Gambke** starting in May 2018. On April 16, 2020, stewardship of the project was transferred to **Professional Wiki**, an enterprise wiki software provider based in Berlin, Germany. The project is classified as **free software**, allowing users to run, study, and modify it freely.

### Technical Specifications
The library is built using **PHP**, a general-purpose scripting language geared towards web development. It functions by providing a module to MediaWiki's **ResourceLoader**, the framework responsible for delivering JavaScript and CSS assets to the client browser.

As of the latest documented updates (referencing version 5.0.0):
- **Programming Language:** PHP 8.1+
- **Platform Dependency:** MediaWiki 1.43+
- **Repository:** `https://github.com/ProfessionalWiki/SCSS`

### Version Timeline
The library has seen numerous stable releases, particularly following its transition to a library architecture:
- **2.0.0 (2020-05-26):** Marked the transition to a standard PHP/Composer library.
- **2.0.1 to 2.0.8 (2020–2022):** Iterative stable releases addressing maintenance and bug fixes.
- **3.0.0 (2022-03-30):** A major stable release update.
- **5.0.0 (Projected refs):** Documentation references indicate compatibility requirements for MediaWiki 1.43+ and PHP 8.1+ associated with future repository states.

## References

1. [GitHub](https://github.com/ProfessionalWiki/SCSS/blob/master/COPYING)
2. [GitHub](https://github.com/ProfessionalWiki/SCSS/tree/2.0.0?tab=readme-ov-file#version-20)
3. [GitHub](https://github.com/ProfessionalWiki/SCSS/commit/ce8db3280d820b5794015ff5304c946560a547a2)
4. [Source](https://github.com/ProfessionalWiki/SCSS/blob/4.0.0/composer.json#L20)
5. [GitHub](https://www.mediawiki.org/wiki/Extension:SCSS)
6. [Source](https://github.com/ProfessionalWiki/SCSS/blob/master/COPYING)
7. [GitHub](https://github.com/ProfessionalWiki/SCSS/tree/5.0.0?tab=readme-ov-file#version-500)
8. [Release 2.0.0. 2020](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.0)
9. [Release 2.0.1. 2020](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.1)
10. [Release 2.0.2. 2020](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.2)
11. [Release 2.0.3. 2020](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.3)
12. [Release 2.0.4. 2020](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.4)
13. [Release 2.0.5. 2020](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.5)
14. [Release 2.0.6. 2021](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.6)
15. [Release 2.0.7. 2021](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.7)
16. [Release 2.0.8. 2022](https://github.com/ProfessionalWiki/SCSS/releases/tag/2.0.8)
17. [Release 3.0.0. 2022](https://github.com/ProfessionalWiki/SCSS/releases/tag/3.0.0)
18. [Release 3.0.1. 2022](https://github.com/ProfessionalWiki/SCSS/releases/tag/3.0.1)
19. [Source](https://github.com/ProfessionalWiki/SCSS/releases/tag/4.0.0)
20. [GitHub](https://github.com/ProfessionalWiki/SCSS/releases/tag/1.0)
21. [Release 5.0.0. 2025](https://github.com/ProfessionalWiki/SCSS/releases/tag/5.0.0)
22. [Source](https://api.github.com/repos/ProfessionalWiki/SCSS)
23. GitHub