[PR #3471] [MERGED] @emotion/css as drop-in replacement for abandoned glamor library #30797

Closed
opened 2026-04-18 07:05:23 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/actualbudget/actual/pull/3471
Author: @joel-jeremy
Created: 9/20/2024
Status: Merged
Merged: 10/18/2024
Merged by: @joel-jeremy

Base: masterHead: @emotion/css


📝 Commits (10+)

📊 Changes

141 files changed (+1008 additions, -927 deletions)

View changed files

📝 packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-import-csv-file-twice-1-chromium-linux.png (+0 -0)
📝 packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-import-csv-file-twice-2-chromium-linux.png (+0 -0)
📝 packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-import-csv-file-twice-3-chromium-linux.png (+0 -0)
📝 packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-imports-transactions-from-a-CSV-file-1-chromium-linux.png (+0 -0)
📝 packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-imports-transactions-from-a-CSV-file-2-chromium-linux.png (+0 -0)
📝 packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-imports-transactions-from-a-CSV-file-3-chromium-linux.png (+0 -0)
📝 packages/desktop-client/globals.d.ts (+7 -0)
📝 packages/desktop-client/package.json (+1 -1)
📝 packages/desktop-client/src/components/AnimatedRefresh.tsx (+2 -3)
📝 packages/desktop-client/src/components/AppBackground.tsx (+3 -3)
📝 packages/desktop-client/src/components/FixedSizeList.tsx (+1 -2)
📝 packages/desktop-client/src/components/LoggedInUser.tsx (+2 -2)
📝 packages/desktop-client/src/components/ManageRules.tsx (+4 -7)
📝 packages/desktop-client/src/components/Notes.tsx (+6 -6)
📝 packages/desktop-client/src/components/NotesButton.tsx (+8 -2)
📝 packages/desktop-client/src/components/Notifications.tsx (+24 -25)
📝 packages/desktop-client/src/components/Page.tsx (+2 -2)
📝 packages/desktop-client/src/components/PrivacyFilter.tsx (+7 -7)
📝 packages/desktop-client/src/components/ThemeSelector.tsx (+2 -2)
📝 packages/desktop-client/src/components/Titlebar.tsx (+18 -20)

...and 80 more files

📄 Description

Related to https://github.com/actualbudget/actual/issues/701

Actual uses glamor as it's CSS library: https://github.com/threepointone/glamor. The project has been abandoned for 7-8 years now.

This PR attampts to use EmotionJS's @emotion/css package as a drop-in replacement for glamor. Most of the APIs are the same i.e. css, cx, etc so hoping that not much breakage happens. This will need to be thoroughly tested in to ensure that.

This also serves as an opportunity to discuss about our options when modernizing the CSS library since there are lots of new developments in this space e.g. zero-runtime CSS libraries, etc.

https://github.com/reactwg/react-18/discussions/110


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/actualbudget/actual/pull/3471 **Author:** [@joel-jeremy](https://github.com/joel-jeremy) **Created:** 9/20/2024 **Status:** ✅ Merged **Merged:** 10/18/2024 **Merged by:** [@joel-jeremy](https://github.com/joel-jeremy) **Base:** `master` ← **Head:** `@emotion/css` --- ### 📝 Commits (10+) - [`a001271`](https://github.com/actualbudget/actual/commit/a001271d341b6b197c8656a9ec81b62dcf240393) Migrate to @emotion/css - [`0448d2f`](https://github.com/actualbudget/actual/commit/0448d2f91c72c58b21c00b672440029db1d9804b) Remove custom CSSProperties - [`3248bf7`](https://github.com/actualbudget/actual/commit/3248bf745ca630699facde66f4af473c53b4db42) Fix errors - [`a3e31f0`](https://github.com/actualbudget/actual/commit/a3e31f0c7780e832e52c0e14dfb4245051fbe80f) Fix typecheck error - [`1473273`](https://github.com/actualbudget/actual/commit/1473273bc9646b7f8fc013791273bdd07faba3f1) Fix lint error - [`9495857`](https://github.com/actualbudget/actual/commit/9495857b2bd7c621d1fc3db3e9fd274462cc2eb0) Fix typecheck error - [`5e8656b`](https://github.com/actualbudget/actual/commit/5e8656b9c77389c6f28a31db4f09f38db511e95f) Fix typecheck error - [`36cec85`](https://github.com/actualbudget/actual/commit/36cec855d92f37b7cf22dc8b3f0d6cb8a66c7634) Fix typecheck error - [`a801cc1`](https://github.com/actualbudget/actual/commit/a801cc138d5155c0ccfe6b88811d1482df4c8ad6) Release notes - [`bd87c9e`](https://github.com/actualbudget/actual/commit/bd87c9e1b524cb4cbc9ef26eeb68116da4c44c3c) VRT ### 📊 Changes **141 files changed** (+1008 additions, -927 deletions) <details> <summary>View changed files</summary> 📝 `packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-import-csv-file-twice-1-chromium-linux.png` (+0 -0) 📝 `packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-import-csv-file-twice-2-chromium-linux.png` (+0 -0) 📝 `packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-import-csv-file-twice-3-chromium-linux.png` (+0 -0) 📝 `packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-imports-transactions-from-a-CSV-file-1-chromium-linux.png` (+0 -0) 📝 `packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-imports-transactions-from-a-CSV-file-2-chromium-linux.png` (+0 -0) 📝 `packages/desktop-client/e2e/accounts.test.js-snapshots/Accounts-Import-Transactions-imports-transactions-from-a-CSV-file-3-chromium-linux.png` (+0 -0) 📝 `packages/desktop-client/globals.d.ts` (+7 -0) 📝 `packages/desktop-client/package.json` (+1 -1) 📝 `packages/desktop-client/src/components/AnimatedRefresh.tsx` (+2 -3) 📝 `packages/desktop-client/src/components/AppBackground.tsx` (+3 -3) 📝 `packages/desktop-client/src/components/FixedSizeList.tsx` (+1 -2) 📝 `packages/desktop-client/src/components/LoggedInUser.tsx` (+2 -2) 📝 `packages/desktop-client/src/components/ManageRules.tsx` (+4 -7) 📝 `packages/desktop-client/src/components/Notes.tsx` (+6 -6) 📝 `packages/desktop-client/src/components/NotesButton.tsx` (+8 -2) 📝 `packages/desktop-client/src/components/Notifications.tsx` (+24 -25) 📝 `packages/desktop-client/src/components/Page.tsx` (+2 -2) 📝 `packages/desktop-client/src/components/PrivacyFilter.tsx` (+7 -7) 📝 `packages/desktop-client/src/components/ThemeSelector.tsx` (+2 -2) 📝 `packages/desktop-client/src/components/Titlebar.tsx` (+18 -20) _...and 80 more files_ </details> ### 📄 Description <!-- Thank you for submitting a pull request! Make sure to follow the instructions to write release notes for your PR — it should only take a minute or two: https://github.com/actualbudget/docs#writing-good-release-notes --> Related to https://github.com/actualbudget/actual/issues/701 Actual uses glamor as it's CSS library: https://github.com/threepointone/glamor. The project has been abandoned for 7-8 years now. This PR attampts to use EmotionJS's @emotion/css package as a drop-in replacement for glamor. Most of the APIs are the same i.e. `css`, `cx`, etc so hoping that not much breakage happens. This will need to be thoroughly tested in to ensure that. This also serves as an opportunity to discuss about our options when modernizing the CSS library since there are lots of new developments in this space e.g. zero-runtime CSS libraries, etc. https://github.com/reactwg/react-18/discussions/110 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-18 07:05:23 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#30797