Skip to content

Use native CSS instead of SCSS#8241

Merged
Alkarex merged 2 commits intoFreshRSS:edgefrom
Alkarex:no-scss
Nov 23, 2025
Merged

Use native CSS instead of SCSS#8241
Alkarex merged 2 commits intoFreshRSS:edgefrom
Alkarex:no-scss

Conversation

@Alkarex
Copy link
Member

@Alkarex Alkarex commented Nov 22, 2025

I was tired of having to handle the SCSS themes differently.
Ansum/Mapco SCSS -> CSS & remove sass dependencies
fix #7611
Follow-up of #8200
The changes are actually quite limited (mostly changing the syntax of the variables and a few other things)
Require support for:

Tests welcome.
The styles are left as individual CSS files as designed originally in SCSS. I expect proper HTTP caching and HTTP/2 to be sufficient instead of aggregating back to a single CSS, but might be done in another PR if needed.

At the same time, fixed the fact that we had various whitespace styles in our JSON files, in particular in those themes, sometimes with 2 spaces, or 4 spaces, or tabs. Use tabs everywhere as defined in editorconfig.

I would like to merge this one first to complete #8230

I was tired of having to handle the SCSS themes differently.
fix FreshRSS#7611
Follow-up of FreshRSS#8200
The changes are actually quite limited (mostly changing the syntax of the variables and a few other things)
Require support for:
* https://developer.mozilla.org/en-US/docs/Web/CSS/Guides/Nesting
* https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/Nesting_selector
* https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/color-mix

Tests welcome.
The styles are left as individual CSS files as designed originally in SCSS. I expect proper HTTP caching and HTTP/2 to be sufficient instead of aggregating back to a single CSS, but might be done in another PR if needed.

At the same time, fixed the fact that we had various whitespace styles in our JSON files, in particular in those themes, sometimes with 2 spaces, or 4 spaces, or tabs. Use tabs everywhere as defined in editorconfig.

I would like to merge this one first to complete FreshRSS#8230
@Alkarex Alkarex added this to the 1.28.0 milestone Nov 22, 2025
package.json Outdated
Comment on lines +30 to +33
"rtlcss": "npm run rtlcss:run && npm run rtlcss:clean && npm run rtlcss:imports",
"rtlcss:run": "rtlcss -d p/themes/",
"rtlcss:clean": "find p/themes/ -type f -name '*.rtl.rtl.css' -delete",
"rtlcss:imports": "find p/themes -type f -name '*.rtl.css' -print0 | xargs -0 sed -i -E '/\\.rtl\\.css/! s|^(@import \"[^\"]+)(\\.css\";)$|\\1.rtl\\2|'",
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part is modified to rewrite the CSS @import URLs to RTL.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible to do this differently? 🤔

I found MohammadYounes/rtlcss#108 (comment) but not sure how relevant it is

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I tried a bit stringMap without success but not the approach you found.
Could be better indeed. Help welcome, or I will come back to it later tonight.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems to work fine 854d989 👍🏻

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We now lack a more elegant approach to avoid find p/themes/ -type f -name '*.rtl.rtl.css' -delete

@Inverle
Copy link
Member

Inverle commented Nov 22, 2025

The styles are left as individual CSS files as designed originally in SCSS. I expect proper HTTP caching and HTTP/2 to be sufficient instead of aggregating back to a single CSS, but might be done in another PR if needed.

I'm not sure if I even like the CSS being split between files in the first place. I prefer sections split with comments, like in frss.css

At the same time, fixed the fact that we had various whitespace styles in our JSON files, in particular in those themes, sometimes with 2 spaces, or 4 spaces, or tabs. Use tabs everywhere as defined in editorconfig.

I was annoyed by the spaces instead of tabs in composer.json, so this is a nice change

"name": "Ansum",
"author": "Thomas Guesnon",
"description": "Thème sablonneux",
"version": 0.2,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I forget that themes have a version assigned to them, there were probably many theme changes without a version bump.

The versioning itself is also inconsistent, for example this has 0.2 set as the version, but Swage is 1.0 (why is the major version not 1?)
Even Origine is 0.2

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a nitpick of course, but also note that some themes have a French description and some an English description.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed, and not all themes have a version though. This should be cleaned. But best in another PR and help welcome.

Copy link
Member

@Inverle Inverle Nov 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After this one is merged though because there would be merge conflicts otherwise

@Alkarex
Copy link
Member Author

Alkarex commented Nov 22, 2025

I'm not sure if I even like the CSS being split between files in the first place

Yes, I do not have a strong stance on the topic, but I like the idea of making as few changes as possible in this PR to focus on the migration from SCSS to CSS and stay close to the original author's intention.

@Frenzie
Copy link
Member

Frenzie commented Nov 22, 2025

I'm not sure if I even like the CSS being split between files in the first place. I prefer sections split with comments, like in frss.css

It can be nice for some purposes, but agreed, this isn't one of them.

@Alkarex Alkarex merged commit 1c92d55 into FreshRSS:edge Nov 23, 2025
1 check passed
@Alkarex Alkarex deleted the no-scss branch November 23, 2025 12:15
alexlebens pushed a commit to alexlebens/infrastructure that referenced this pull request Dec 26, 2025
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [freshrss/freshrss](https://freshrss.org/) ([source](https://github.com/FreshRSS/FreshRSS)) | minor | `1.27.1` -> `1.28.0` |

---

### Release Notes

<details>
<summary>FreshRSS/FreshRSS (freshrss/freshrss)</summary>

### [`v1.28.0`](https://github.com/FreshRSS/FreshRSS/blob/HEAD/CHANGELOG.md#2025-12-24-FreshRSS-1280)

[Compare Source](FreshRSS/FreshRSS@1.27.1...1.28.0)

- Features
  - New sorting and filtering by date of *User modified* [#&#8203;7886](FreshRSS/FreshRSS#7886), [#&#8203;8090](FreshRSS/FreshRSS#8090),
    [#&#8203;8105](FreshRSS/FreshRSS#8105), [#&#8203;8118](FreshRSS/FreshRSS#8118), [#&#8203;8130](FreshRSS/FreshRSS#8130)
    - Corresponding search operator, e.g. `userdate:PT1H` for the past hour [#&#8203;8093](FreshRSS/FreshRSS#8093)
    - Allows finding articles marked by the local user as read/unread or starred/unstarred at specific dates for e.g. undo action.
  - New sorting by article length [#&#8203;8119](FreshRSS/FreshRSS#8119)
  - New advanced search form [#&#8203;8103](FreshRSS/FreshRSS#8103), [#&#8203;8122](FreshRSS/FreshRSS#8122), [#&#8203;8226](FreshRSS/FreshRSS#8226)
  - Add compatibility with PCRE word boundary `\b` and `\B` for regex search using PostgreSQL [#&#8203;8141](FreshRSS/FreshRSS#8141)
  - More uniform SQL search and PHP search for accents and case-sensitivity (e.g. for automatically marking as read) [#&#8203;8329](FreshRSS/FreshRSS#8329)
  - New overview of dates with most unread articles [#&#8203;8089](FreshRSS/FreshRSS#8089)
  - Allow marking as read articles older than 1 or 7 days also when sorting by publication date [#&#8203;8163](FreshRSS/FreshRSS#8163)
  - New option to show user labels instead of tags in RSS share [#&#8203;8112](FreshRSS/FreshRSS#8112)
  - Add new feed visibility (priority) *Show in its feed* [#&#8203;7972](FreshRSS/FreshRSS#7972)
  - New ability to share feed visibility through API (implemented by e.g. Capy Reader) [#&#8203;7583](FreshRSS/FreshRSS#7583), [#&#8203;8158](FreshRSS/FreshRSS#8158)
  - Configurable notification timeout [#&#8203;7942](FreshRSS/FreshRSS#7942)
  - OPML export/import of unicity criteria [#&#8203;8243](FreshRSS/FreshRSS#8243)
  - Ensure stable IDs (categories, feeds, labels) during export/import [#&#8203;7988](FreshRSS/FreshRSS#7988)
  - Add username and timestamp to SQLite export from Web UI [#&#8203;8169](FreshRSS/FreshRSS#8169)
  - Add option to apply filter actions to existing articles [#&#8203;7959](FreshRSS/FreshRSS#7959), [#&#8203;8259](FreshRSS/FreshRSS#8259)
  - Support CSS selector `~` *subsequent-sibling* [#&#8203;8154](FreshRSS/FreshRSS#8154)
    - Upstream PR [phpgt/CssXPath#231](phpgt/CssXPath#231)
  - Rework saving of configuration files for more reliability in case of e.g. full disk [#&#8203;8220](FreshRSS/FreshRSS#8220)
  - Web scraping support date format as milliseconds for Unix epoch [#&#8203;8266](FreshRSS/FreshRSS#8266)
  - Allow negative category sort numbers [#&#8203;8330](FreshRSS/FreshRSS#8330)
- Performance
  - Improve SQL speed for updating cached information [#&#8203;6957](FreshRSS/FreshRSS#6957), [#&#8203;8207](FreshRSS/FreshRSS#8207),
    [#&#8203;8255](FreshRSS/FreshRSS#8255), [#&#8203;8254](FreshRSS/FreshRSS#8254), [#&#8203;8255](FreshRSS/FreshRSS#8255)
  - Fix SQL performance issue with MySQL, using an index hint [#&#8203;8211](FreshRSS/FreshRSS#8211)
  - Scaling of user statistics in Web UI and CLI, to help instances with 1k+ users [#&#8203;8277](FreshRSS/FreshRSS#8277)
  - API streaming of large responses for reducing memory consumption and increasing speed [#&#8203;8041](FreshRSS/FreshRSS#8041)
- Security
  - 💥 Move unsafe autologin to an extension [#&#8203;7958](FreshRSS/FreshRSS#7958)
  - Fix some CSRFs [#&#8203;8035](FreshRSS/FreshRSS#8035)
  - Strengthen some crypto (login, tokens, nonces) [#&#8203;8061](FreshRSS/FreshRSS#8061), [#&#8203;8320](FreshRSS/FreshRSS#8320)
  - Create separate HTTP `Retry-After` rules for proxies [#&#8203;8029](FreshRSS/FreshRSS#8029), [#&#8203;8218](FreshRSS/FreshRSS#8218)
  - Add `data:` to CSP in subscription controller [#&#8203;8253](FreshRSS/FreshRSS#8253)
  - Improve anonymous authentication logic [#&#8203;8165](FreshRSS/FreshRSS#8165)
  - Enable GitHub [release immutability](https://github.blog/changelog/2025-10-28-immutable-releases-are-now-generally-available/) [#&#8203;8205](FreshRSS/FreshRSS#8205)
- Bug fixing
  - Exclude local networks for domain-wide HTTP `Retry-After` [#&#8203;8195](FreshRSS/FreshRSS#8195)
  - Fix OpenID Connect with Debian 13 [#&#8203;8032](FreshRSS/FreshRSS#8032)
  - Fix MySQL / MariaDB bug wrongly sorting new articles [#&#8203;8223](FreshRSS/FreshRSS#8223)
  - Fix MySQL / MariaDB database size calculation [#&#8203;8282](FreshRSS/FreshRSS#8282)
  - Fix SQLite bind bug when adding user label [#&#8203;8101](FreshRSS/FreshRSS#8101)
  - Fix SQL auto-update of field `f.kind` to ease migrations from FreshRSS versions older than 1.20.0 [#&#8203;8148](FreshRSS/FreshRSS#8148)
  - Fix search encoding and quoting [#&#8203;8311](FreshRSS/FreshRSS#8311), [#&#8203;8324](FreshRSS/FreshRSS#8324), [#&#8203;8338](FreshRSS/FreshRSS#8338)
  - Fix handling of database unexpected null content (during migrations) [#&#8203;8319](FreshRSS/FreshRSS#8319), [#&#8203;8321](FreshRSS/FreshRSS#8321)
  - Fix drag & drop of user query losing information [#&#8203;8113](FreshRSS/FreshRSS#8113)
  - Fix DOM error while filtering retrieved full content [#&#8203;8132](FreshRSS/FreshRSS#8132), [#&#8203;8161](FreshRSS/FreshRSS#8161)
  - Fix `config.custom.php` during install [#&#8203;8033](FreshRSS/FreshRSS#8033)
  - Fix do not mark important feeds as read from category [#&#8203;8067](FreshRSS/FreshRSS#8067)
  - Fix regression of warnings in Web browser console due to lack of `window.bcrypt` object [#&#8203;8166](FreshRSS/FreshRSS#8166)
  - Fix chart resize regression due to `chart.js` v4 update [#&#8203;8298](FreshRSS/FreshRSS#8298)
  - Fix CLI user creation warning when language is not given [#&#8203;8283](FreshRSS/FreshRSS#8283)
  - Fix merging of custom HTTP headers [#&#8203;8251](FreshRSS/FreshRSS#8251)
  - Fix bug in the case of duplicated mark-as-read filters [#&#8203;8322](FreshRSS/FreshRSS#8322)
- SimplePie
  - Fix support of HTTP trailer headers [#&#8203;7983](FreshRSS/FreshRSS#7983), [simplepie#943](simplepie/simplepie#943)
  - Apply HTTPS policy also on GUIDs and permalinks [#&#8203;8037](FreshRSS/FreshRSS#8037), [simplepie#951](simplepie/simplepie#951)
    - Fix `WordPress.com` HTTP duplicates with WebSub [Automattic/pushpress#16](Automattic/pushpress#16)
  - Implement HTML whitelist for SimplePie sanitizer [#&#8203;7924](FreshRSS/FreshRSS#7924), [simplepie#947](simplepie/simplepie#947)
  - Various upstream contributions [simplepie#940](simplepie/simplepie#940), [simplepie#944](simplepie/simplepie#944)
- Deployment
  - Docker default image updated to Debian 13 Trixie with PHP 8.4.11 and Apache 2.4.65 [#&#8203;8032](FreshRSS/FreshRSS#8032)
  - Docker alternative image updated to Alpine 3.23 with PHP 8.4.15 and Apache 2.4.65 [#&#8203;8285](FreshRSS/FreshRSS#8285)
  - Fix Docker healthcheck `cli/health.php` compatibility with OpenID Connect [#&#8203;8040](FreshRSS/FreshRSS#8040)
  - Improve Docker for compatibility with other base images such as Arch Linux [#&#8203;8299](FreshRSS/FreshRSS#8299)
    - Improve `cli/access-permissions.sh` to detect the correct permission Web group such as `www-data`, `apache`, or `http`
  - Update PostgreSQL volume for Docker [#&#8203;8216](FreshRSS/FreshRSS#8216), [#&#8203;8224](FreshRSS/FreshRSS#8224)
  - Catch lack of `exec()` function for git update [#&#8203;8228](FreshRSS/FreshRSS#8228)
  - Work around `DOMDocument::saveHTML()` scrambling charset encoding in some versions of libxml2 [#&#8203;8296](FreshRSS/FreshRSS#8296)
  - Improve configuration checks for PHP extensions (in Web UI and CLI), including recommending e.g. `php-intl` [#&#8203;8334](FreshRSS/FreshRSS#8334)
- UI
  - New button for toggling sidebar on desktop view [#&#8203;8201](FreshRSS/FreshRSS#8201), [#&#8203;8286](FreshRSS/FreshRSS#8286)
  - Better transitions between groups of articles [#&#8203;8174](FreshRSS/FreshRSS#8174)
  - New links in transitions and jump ⏭ to next transition [#&#8203;8294](FreshRSS/FreshRSS#8294)
  - More visible selected article [#&#8203;8230](FreshRSS/FreshRSS#8230)
  - Show the parsed search query instead of the original user input [#&#8203;8293](FreshRSS/FreshRSS#8293),
    [#&#8203;8306](FreshRSS/FreshRSS#8306), [#&#8203;8341](FreshRSS/FreshRSS#8341)
  - Show search query in the page title [#&#8203;8217](FreshRSS/FreshRSS#8217)
  - Scroll into filtered feed/category on page load in the sidebar [#&#8203;8281](FreshRSS/FreshRSS#8281), [#&#8203;8307](FreshRSS/FreshRSS#8307)
  - Fix autocomplete issues in change password form [#&#8203;7812](FreshRSS/FreshRSS#7812)
  - Fix navigating between read feeds using shortcut <kbd>shift</kbd>+<kbd>j</kbd>/<kbd>k</kbd> [#&#8203;8057](FreshRSS/FreshRSS#8057)
  - Dark background in Web app manifest to avoid white flash when opening [#&#8203;8140](FreshRSS/FreshRSS#8140)
  - Increase button visibility in UI to change theme [#&#8203;8149](FreshRSS/FreshRSS#8149)
  - Replace arrow navigation in theme switcher with `<select>` [#&#8203;8190](FreshRSS/FreshRSS#8190)
  - Improve scroll of article after load of user labels [#&#8203;7962](FreshRSS/FreshRSS#7962)
  - Keep scroll state of page when closing the slider [#&#8203;8295](FreshRSS/FreshRSS#8295), [#&#8203;8301](FreshRSS/FreshRSS#8301)
  - Scroll into filtered feed/category on page load [#&#8203;8281](FreshRSS/FreshRSS#8281)
  - Display sidebar dropdowns above if no space below [#&#8203;8335](FreshRSS/FreshRSS#8335), [#&#8203;8336](FreshRSS/FreshRSS#8336)
  - Use native CSS instead of SCSS [#&#8203;8200](FreshRSS/FreshRSS#8200), [#&#8203;8241](FreshRSS/FreshRSS#8241)
    - Using [CSS nesting](https://developer.mozilla.org/en-US/docs/Web/CSS/Guides/Nesting) and [relative colours](https://developer.mozilla.org/en-US/docs/Web/CSS/Guides/Colors/Using_relative_colors).
  - Various UI and style improvements: [#&#8203;8171](FreshRSS/FreshRSS#8171), [#&#8203;8185](FreshRSS/FreshRSS#8185), [#&#8203;8196](FreshRSS/FreshRSS#8196)
  - JavaScript finalise migration from `Promise` to `async`/`await`: [#&#8203;8182](FreshRSS/FreshRSS#8182)
- API
  - API performance optimisation: streaming of large responses [#&#8203;8041](FreshRSS/FreshRSS#8041)
  - Fever API: Add `with_ids` parameter to mass-change read/unread/saved/unsaved on lists of articles [#&#8203;8312](FreshRSS/FreshRSS#8312)
  - Misc API: better REST error semantics [#&#8203;8232](FreshRSS/FreshRSS#8232)
- Extensions
  - Add support for extension priority [#&#8203;8038](FreshRSS/FreshRSS#8038)
  - Add support for extension compatibility [#&#8203;8081](FreshRSS/FreshRSS#8081)
  - Improve PHP code with hook enums [#&#8203;8036](FreshRSS/FreshRSS#8036)
  - New hook `nav_entries` [#&#8203;8054](FreshRSS/FreshRSS#8054)
  - Rename [Extensions](https://github.com/FreshRSS/Extensions) default branch from *master* to *main* [#&#8203;8194](FreshRSS/FreshRSS#8194)
- I18n
  - Translation status as text in README [#&#8203;7842](FreshRSS/FreshRSS#7842)
  - Add new translate CLI commands `move` [#&#8203;8214](FreshRSS/FreshRSS#8214)
  - Change some regional language codes to comply with RFC 5646 / IETF BCP 47 / ISO 3166 / ISO 639-1 [#&#8203;8065](FreshRSS/FreshRSS#8065)
  - Improve German [#&#8203;8028](FreshRSS/FreshRSS#8028)
  - Improve Greek [#&#8203;8146](FreshRSS/FreshRSS#8146)
  - Improve Finnish [#&#8203;8073](FreshRSS/FreshRSS#8073), [#&#8203;8092](FreshRSS/FreshRSS#8092)
  - Improve Hungarian [#&#8203;8244](FreshRSS/FreshRSS#8244)
  - Improve Italian [#&#8203;8115](FreshRSS/FreshRSS#8115), [#&#8203;8186](FreshRSS/FreshRSS#8186)
  - Improve Polish [#&#8203;8134](FreshRSS/FreshRSS#8134), [#&#8203;8135](FreshRSS/FreshRSS#8135)
  - Improve Russian [#&#8203;8155](FreshRSS/FreshRSS#8155), [#&#8203;8197](FreshRSS/FreshRSS#8197)
  - Improve Simplified Chinese [#&#8203;8308](FreshRSS/FreshRSS#8308), [#&#8203;8313](FreshRSS/FreshRSS#8313)
- Misc.
  - Add code to modify a search expression [#&#8203;8293](FreshRSS/FreshRSS#8293)
  - Remove *Pocket* sharing service [#&#8203;8127](FreshRSS/FreshRSS#8127), [#&#8203;8128](FreshRSS/FreshRSS#8128)
  - Update to PHPMailer 7.0.1 [#&#8203;8048](FreshRSS/FreshRSS#8048), [#&#8203;8180](FreshRSS/FreshRSS#8180), [#&#8203;8272](FreshRSS/FreshRSS#8272)
  - 💥 Housekeeping of `lib_rss.php` with potential breaking changes for some extensions [#&#8203;8193](FreshRSS/FreshRSS#8193),
  - Use native PHP `#[Deprecated]` [#&#8203;8325](FreshRSS/FreshRSS#8325)
  - Improve PHP code [#&#8203;8156](FreshRSS/FreshRSS#8156), [#&#8203;8203](FreshRSS/FreshRSS#8203), [#&#8203;8284](FreshRSS/FreshRSS#8284),
    [#&#8203;8292](FreshRSS/FreshRSS#8292), [#&#8203;8297](FreshRSS/FreshRSS#8297)
  - GitHub Actions: `--no-progress` [#&#8203;8315](FreshRSS/FreshRSS#8315)
  - Update dev dependencies [#&#8203;8043](FreshRSS/FreshRSS#8043), [#&#8203;8044](FreshRSS/FreshRSS#8044),
    [#&#8203;8045](FreshRSS/FreshRSS#8045), [#&#8203;8046](FreshRSS/FreshRSS#8046), [#&#8203;8047](FreshRSS/FreshRSS#8047),
    [#&#8203;8052](FreshRSS/FreshRSS#8052), [#&#8203;8176](FreshRSS/FreshRSS#8176), [#&#8203;8177](FreshRSS/FreshRSS#8177),
    [#&#8203;8178](FreshRSS/FreshRSS#8178), [#&#8203;8179](FreshRSS/FreshRSS#8179), [#&#8203;8210](FreshRSS/FreshRSS#8210),
    [#&#8203;8270](FreshRSS/FreshRSS#8270), [#&#8203;8271](FreshRSS/FreshRSS#8271), [#&#8203;8273](FreshRSS/FreshRSS#8273),
    [#&#8203;8274](FreshRSS/FreshRSS#8274), [#&#8203;8275](FreshRSS/FreshRSS#8275), [#&#8203;8276](FreshRSS/FreshRSS#8276)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zOS4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2851
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Get rid of SCSS - just use plain CSS

3 participants