Skip to content

Conversation

@lk340
Copy link
Collaborator

@lk340 lk340 commented Jul 31, 2025

Design


Summary

Onit is finally going light! And it also has a new glassy personality ✨💅

Updates are as follows:

  • Add new templated light/dark theme colors, based on the new Figma variable color palettes conjured up by Elise.
  • Add a new glassy look and feel to various parts of the app, such as the main body, context tags, popover menus, and modals.
  • Update all non-themed colors with new themed colors.
  • Update all colors to be prefixed with Color., NSColor., etc.

@lk340 lk340 self-assigned this Jul 31, 2025
Copy link
Contributor

@timlenardo timlenardo left a comment

Choose a reason for hiding this comment

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

This looks great! Thanks for taking it on Loyd. I left some nits, but I think we can merge this as is.

Two points:

  1. Why are we prefixing everything with Color (i.e. Color.t_0 instead of just .t_0)?
  2. There is a follow-up discussion I'd like to have in the next eng sync. I'm not wild about the naming here since it's not immediately obvious to me what "s_0" and "t_3" represent. If I were creating a new component, I wouldn't know which colors to choose. It might be better to have names like 'solid', 'solid100', etc etc, and 'transparent', 'transparent300', etc. It's a bit longer to type, but hopefully we won't be typing for much longer :)

.styleText(size: 16, weight: .semibold)
.shadow(color: .white.opacity(0.7), radius: 10, x: 0, y: 0)
.styleText(size: 16, weight: .semibold, color: Color.white)
.shadow(color: Color.white.opacity(0.7), radius: 10, x: 0, y: 0)
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: we may want to use T_N transparent color for the shadow instead of white? I think the white shadow will only show on a dark background!

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The white shadow works, because the text is against a permanently blue background!

.background {
RoundedRectangle(cornerRadius: Self.width / 2)
.fill(isHovering ? .gray800 : .black)
.fill(isHovering ? Color.S_8 : Color.baseBG)
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: In light mode, I'd like the TetheredButton to match the panel's background color when not hovered and change to a lighter color when hovered.

Currently, when it's not hovered, it's lighter than the panel background:

Image

And then when its hovered, it matches the background:

Image

I think it'd look better if it were the opposite way :)

* Shadow on `SimpleButton`.
* Spacing and colors on `WebSearchTab`.
* Disabled state in `RemoteModelSection` when verifying provider API token.
* `Color` prefixes.
@lk340 lk340 merged commit 986c798 into main Aug 14, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants