diff --git a/packages/twenty-website/src/app/_components/contributors/AvatarGrid.tsx b/packages/twenty-website/src/app/_components/contributors/AvatarGrid.tsx index 436f7bd1d..4f98abf43 100644 --- a/packages/twenty-website/src/app/_components/contributors/AvatarGrid.tsx +++ b/packages/twenty-website/src/app/_components/contributors/AvatarGrid.tsx @@ -26,6 +26,7 @@ const AvatarItem = styled.div` border-radius: 16px; overflow: hidden; transition: 200ms; + background-color: white; &:hover { -webkit-box-shadow: -6px 6px 0px 1px rgba(0, 0, 0, 1); diff --git a/packages/twenty-website/src/app/_components/oss-friends/Background.tsx b/packages/twenty-website/src/app/_components/oss-friends/Background.tsx index f97b976d4..06f472f48 100644 --- a/packages/twenty-website/src/app/_components/oss-friends/Background.tsx +++ b/packages/twenty-website/src/app/_components/oss-friends/Background.tsx @@ -1,44 +1,100 @@ 'use client'; - +import React from 'react'; import styled from '@emotion/styled'; -const BackgroundContainer = styled.div` +const BACKGROUND_ROTATION = -5; + +const BACKGROUND_IMAGE_URL = + 'https://framerusercontent.com/images/nqEmdwe7yDXNsOZovuxG5zvj2E.png'; + +const BackgroundImage = styled.div` position: absolute; - top: 100%; - left: 0px; - width: 100%; - height: 100%; - max-height: 200%; - background-image: url(https://framerusercontent.com/images/nqEmdwe7yDXNsOZovuxG5zvj2E.png); + height: calc(100% - 350px); + width: 200%; + top: 250px; + overflow: visible; + z-index: -3; + background-image: url(${BACKGROUND_IMAGE_URL}); + transform: rotate(${BACKGROUND_ROTATION}deg); background-size: auto 20px; background-repeat: repeat; transform-origin: center center; - z-index: -2; + + @media (max-width: 1024px) { + transform: rotate(-1deg); + top: 100px; + height: 100%; + } `; -const Gradient = styled.div` - position: absolute; - width: 100%; +const Container = styled.div` + position: relative; + display: flex; + align-items: center; + justify-content: center; height: 100%; - max-height: 200%; - top: 100%; - left: 0; - right: 0; - bottom: 0; - background: linear-gradient( - 185deg, - #fff 8.33%, - rgba(255, 255, 255, 0.08) 48.95%, - #fff 92.18% - ); - z-index: -1; + width: 100%; + overflow: hidden; + min-width: 100vw; + max-width: 100vw; + z-index: 0; + + &::before { + content: ''; + position: absolute; + top: 150px; + left: 0; + height: 300px; + width: 200%; + background: linear-gradient( + to bottom, + rgba(255, 255, 255, 1), + rgba(255, 255, 255, 0) + ); + transform: rotate(${BACKGROUND_ROTATION}deg); + z-index: -2; + pointer-events: none; + + @media (max-width: 1024px) { + height: 200px; + top: 50px; + transform: rotate(-1deg); + } + } + + &::after { + content: ''; + position: absolute; + bottom: 140px; + left: -20px; + height: 300px; + width: 220%; + background: linear-gradient( + to top, + rgba(255, 255, 255, 1), + rgba(255, 255, 255, 0) + ); + transform: rotate(${BACKGROUND_ROTATION}deg); + z-index: -2; + pointer-events: none; + + @media (max-width: 1024px) { + height: 200px; + transform: rotate(-1deg); + bottom: 0px; + } + } `; -export const Background = () => { +type BackgroundProps = { + children: React.ReactNode; +}; + +export const Background = ({ children }: BackgroundProps) => { return ( - <> - - - + + {children} + + ); }; diff --git a/packages/twenty-website/src/app/contributors/[slug]/page.tsx b/packages/twenty-website/src/app/contributors/[slug]/page.tsx index 0a916fc54..549333552 100644 --- a/packages/twenty-website/src/app/contributors/[slug]/page.tsx +++ b/packages/twenty-website/src/app/contributors/[slug]/page.tsx @@ -100,8 +100,7 @@ export default async function ({ params }: { params: { slug: string } }) { .sort((a, b) => new Date(a.day).getTime() - new Date(b.day).getTime()); return ( - <> - + - + ); } diff --git a/packages/twenty-website/src/app/contributors/page.tsx b/packages/twenty-website/src/app/contributors/page.tsx index 8e553d330..deb8803f4 100644 --- a/packages/twenty-website/src/app/contributors/page.tsx +++ b/packages/twenty-website/src/app/contributors/page.tsx @@ -43,13 +43,12 @@ const Contributors = async () => { .filter((contributor) => contributor.pullRequestCount > 0); return ( - <> - +
- + ); }; diff --git a/packages/twenty-website/src/app/oss-friends/page.tsx b/packages/twenty-website/src/app/oss-friends/page.tsx index 9b2f9b453..ec8d930e9 100644 --- a/packages/twenty-website/src/app/oss-friends/page.tsx +++ b/packages/twenty-website/src/app/oss-friends/page.tsx @@ -10,8 +10,7 @@ export default async function OssFriends() { const listJson = await ossList.json(); return ( - <> - +
@@ -20,6 +19,6 @@ export default async function OssFriends() { ))} - + ); }