Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🪟 🎉 New theme for Airbyte UI #18817

Merged
merged 10 commits into from
Nov 4, 2022
Merged

🪟 🎉 New theme for Airbyte UI #18817

merged 10 commits into from
Nov 4, 2022

Conversation

timroes
Copy link
Collaborator

@timroes timroes commented Nov 1, 2022

What

Implements a new theme for the Airbyte UI as designed by Nico in this Figma: https://www.figma.com/file/liLQhcbpVHiEDW18kiXQe3/01_03_CONNECTIONS?node-id=1701%3A44970

It also cleans up relevant (S)CSS, SVG and components. See inline comments on this PR for more information.

localhost_3000_workspaces_9d043fe5-cb4a-4e11-9ba0-a0a206e109f5_connections

localhost_3000_workspaces_9d043fe5-cb4a-4e11-9ba0-a0a206e109f5_connections (1)

@github-actions github-actions bot added area/platform issues related to the platform area/frontend Related to the Airbyte webapp labels Nov 1, 2022
@timroes timroes removed the area/platform issues related to the platform label Nov 1, 2022
@github-actions github-actions bot added the area/platform issues related to the platform label Nov 1, 2022
import en from "./locales/en.json";
import { Routing } from "./pages/routes";
import { WorkspaceServiceProvider } from "./services/workspaces/WorkspacesService";
import { theme } from "./theme";

const StyleProvider: React.FC<React.PropsWithChildren<unknown>> = ({ children }) => (
<ThemeProvider theme={theme}>
<GlobalStyle />
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ Removing the old GlobalStyle component using styled-components and replacing it by a global.scss file that's loaded in index.tsx.

@use "./colors";
@use "./fonts";

html,
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ In the styled-component variant this still had a #__next on it, which I assume (given we have 0 elements with that id) was a leftover from some very early versions of the app.

@@ -27,7 +27,7 @@ const run = keyframes`
const Bar = styled.div`
width: 100%;
height: 49px;
background: ${({ theme }) => theme.darkBeigeColor} url("/rectangle.svg");
background: #ffebd7 url("/rectangle.svg");
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ Last place this beige is still used, but since we're planning to remove the onboarding page altogether soon, I just inlined the color for now here, instead of redesigning this progress bar.

@@ -74,10 +76,6 @@ $red-800: #bc0042;
$red-900: #99003f;
$red: $red-300;

$beige-50: #fef9f4;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ No more beige color!!!

@@ -8,7 +8,7 @@ interface Props {
}

const Box = styled.div`
background: ${({ theme }) => theme.darkBeigeColor};
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ This component is used for "you still need to verify your email address" and for deleted connections:

screenshot-20221102-100110

@@ -20,7 +20,7 @@ const StepView = styled.div<{
min-width: ${({ lightMode }) => (lightMode ? "100px" : "auto")};
min-height: 28px;
padding: 6px 14px;
border-radius: 4px;
border-radius: 28px;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

screenshot-20221102-100144

@@ -84,7 +84,7 @@ const Th = styled.th<TableHeaderProps>`
font-size: ${({ light }) => (light ? 11 : 10)}px;
line-height: 12px;
color: ${({ theme, highlighted }) => (highlighted ? theme.whiteColor : theme.lightTextColor)};
border-bottom: ${({ theme, light }) => (light ? "none" : ` 1px solid ${theme.backgroundColor}`)};
border-bottom: none;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ This border was anyway barely visible (and not sure why we at all tried to have a beige border below the dark blue table header), so I removed it.

Comment on lines +2 to +3
$blue-30: #f4f4ff;
$blue-40: #f0efff;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ Took from our color palette in Figma, those where still missing here.

@@ -16,8 +16,6 @@
margin-bottom: 24px;
}

background: radial-gradient(35.57% 35.57% at 50% 50%, colors.$white 0%, colors.$white 55.87%, colors.$beige 100%);
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ On the new background it looks nicer just not having any radial gradient behind the error view.

cursor: pointer;
border-radius: variables.$border-radius-md;
color: colors.$grey-30;
color: inherit;
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ℹ️ Making sure this just inherits colors from the actual sidebar. Need to specify it explicitaly since browser have a default for color on button that would prevent the inherit otherwise.

@timroes timroes marked this pull request as ready for review November 2, 2022 17:06
@timroes timroes requested a review from a team as a code owner November 2, 2022 17:06
Copy link
Contributor

@josephkmh josephkmh left a comment

Choose a reason for hiding this comment

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

Nice, looks much cleaner 🙂 I tested locally and clicked around, couldn't find any visual problems.

Not approving for now, since we probably want a few more eyes on this!

airbyte-webapp/.storybook/preview.ts Show resolved Hide resolved
Copy link
Contributor

@lmossman lmossman left a comment

Choose a reason for hiding this comment

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

Code and new UI theme look great! Clicked around locally and didn't notice anything that looked off.

Only comment I have is that the Airbyte UI is now so bright that it would be cool to have a dark theme toggle built into the webapp. Maybe a future hackweek project!

@timroes timroes merged commit 4c6f520 into master Nov 4, 2022
@timroes timroes deleted the tim/redesign branch November 4, 2022 12:34
@timroes
Copy link
Collaborator Author

timroes commented Nov 4, 2022

@lmossman We have adding a dark theme tracked via #1628

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/frontend Related to the Airbyte webapp area/platform issues related to the platform
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants