diff --git a/apps/www/_case-studies/epsilon3.mdx b/apps/www/_case-studies/epsilon3.mdx
index e9d90f20900..07dc59411e0 100644
--- a/apps/www/_case-studies/epsilon3.mdx
+++ b/apps/www/_case-studies/epsilon3.mdx
@@ -7,6 +7,7 @@ author_url: https://github.com/kiwicopple
author_image_url: https://avatars2.githubusercontent.com/u/10214025?s=400&u=c6775be2ae667e2acae3ccd347fed62bb3f5b3e7&v=4
authorURL: https://github.com/kiwicopple
logo: /images/case-studies/logos/epsilon3.png
+logo_inverse: /images/case-studies/logos/light/epsilon3.png
tags:
- supabase
date: '2023-02-14'
diff --git a/apps/www/_case-studies/mobbin.mdx b/apps/www/_case-studies/mobbin.mdx
index 0d425585f51..d16eb00688a 100644
--- a/apps/www/_case-studies/mobbin.mdx
+++ b/apps/www/_case-studies/mobbin.mdx
@@ -8,6 +8,7 @@ author_url: https://github.com/kiwicopple
author_image_url: https://avatars2.githubusercontent.com/u/10214025?s=400&u=c6775be2ae667e2acae3ccd347fed62bb3f5b3e7&v=4
authorURL: https://github.com/kiwicopple
logo: /images/case-studies/logos/mobbin.png
+logo_inverse: /images/case-studies/logos/light/mobbin.png
tags:
- supabase
date: '2023-02-14'
diff --git a/apps/www/_case-studies/replenysh.mdx b/apps/www/_case-studies/replenysh.mdx
index 130f129e97f..d8ee7d3affb 100644
--- a/apps/www/_case-studies/replenysh.mdx
+++ b/apps/www/_case-studies/replenysh.mdx
@@ -7,6 +7,7 @@ author_url: https://github.com/kiwicopple
author_image_url: https://avatars2.githubusercontent.com/u/10214025?s=400&u=c6775be2ae667e2acae3ccd347fed62bb3f5b3e7&v=4
authorURL: https://github.com/kiwicopple
logo: /images/case-studies/logos/replenysh.png
+logo_inverse: /images/case-studies/logos/light/replenysh.png
tags:
- supabase
date: '2023-02-14'
diff --git a/apps/www/_case-studies/xendit.mdx b/apps/www/_case-studies/xendit.mdx
index 45279d9eb00..50926f75c14 100644
--- a/apps/www/_case-studies/xendit.mdx
+++ b/apps/www/_case-studies/xendit.mdx
@@ -7,6 +7,7 @@ author_url: https://github.com/kiwicopple
author_image_url: https://avatars2.githubusercontent.com/u/10214025?s=400&u=c6775be2ae667e2acae3ccd347fed62bb3f5b3e7&v=4
authorURL: https://github.com/kiwicopple
logo: /images/case-studies/logos/xendit.png
+logo_inverse: /images/case-studies/logos/light/xendit.png
company_url: https://xendit.co
tags:
- supabase
diff --git a/apps/www/pages/case-studies.module.css b/apps/www/pages/case-studies/case-studies.module.css
similarity index 91%
rename from apps/www/pages/case-studies.module.css
rename to apps/www/pages/case-studies/case-studies.module.css
index 307d04adb1f..673690668c4 100644
--- a/apps/www/pages/case-studies.module.css
+++ b/apps/www/pages/case-studies/case-studies.module.css
@@ -1,4 +1,5 @@
.bg-visual {
+ animation: fadeIn 3s ease-out both;
background-image:
/* Bg glow */ radial-gradient(
80% 100% at 50% 75%,
@@ -18,7 +19,7 @@
radial-gradient(2px 2px at 49% 27%, #3ecf8e90 0%, #3ecf8e00 100%),
radial-gradient(1px 1px at 52% 7%, #3ecf8e75 0%, #3ecf8e00 100%),
radial-gradient(1px 1px at 55% 21%, #3ecf8e90 0%, #3ecf8e00 100%),
- radial-gradient(2px 2px at 59% 27%, #3ecf8e 0%, #3ecf8e00 100%),
+ radial-gradient(1px 1px at 59% 27%, #3ecf8e 0%, #3ecf8e00 100%),
radial-gradient(1px 1px at 61% 14%, #3ecf8e90 0%, #3ecf8e00 100%),
radial-gradient(1px 1px at 64% 44%, #3ecf8e 0%, #3ecf8e00 100%),
radial-gradient(1px 1px at 74% 15%, #3ecf8e 0%, #3ecf8e00 100%),
@@ -53,3 +54,12 @@
background: #7fe5b794;
box-shadow: 0 -52px 0 -30vw #ffffff;
}
+
+@keyframes fadeIn {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+}
diff --git a/apps/www/pages/case-studies.tsx b/apps/www/pages/case-studies/index.tsx
similarity index 66%
rename from apps/www/pages/case-studies.tsx
rename to apps/www/pages/case-studies/index.tsx
index ba793f9e1b9..065e1fe9cc8 100644
--- a/apps/www/pages/case-studies.tsx
+++ b/apps/www/pages/case-studies/index.tsx
@@ -14,8 +14,10 @@ import { Typography, Badge, Space, Select } from '@supabase/ui'
import PostTypes from '~/types/post'
import BlogListItem from '~/components/Blog/BlogListItem'
import BlogHeader from '~/components/Blog/BlogHeader'
-import ImageGrid from '~/components/ImageGrid'
+import { motion } from 'framer-motion'
import styles from './case-studies.module.css'
+import Link from 'next/link'
+import { GlassPanel } from 'ui'
export async function getStaticProps() {
const allPostsData = getSortedPosts('_case-studies')
@@ -37,7 +39,6 @@ export async function getStaticProps() {
function Blog(props: any) {
const [category, setCategory] = useState('all')
const [blogs, setBlogs] = useState(props.blogs)
-
const { basePath } = useRouter()
useEffect(() => {
@@ -52,18 +53,15 @@ function Blog(props: any) {
)
}, [category])
- console.log(blogs)
-
const caseStudyThumbs = blogs.map((blog: PostTypes, idx: number) => {
return {
- image: blog.logo,
- name: blog.title,
+ logo: blog.logo,
+ logoInverse: blog.logo_inverse,
+ title: blog.title,
link: blog.url,
}
})
- // console.log('caseStudyThumbs', caseStudyThumbs)
-
return (
<>
@@ -77,26 +75,39 @@ function Blog(props: any) {
-
+
-
+
Case studies
- {/* Learn how teams behind everyone's favorite products use Radix to save time, boost
- quality, and set the bar for accessibility. */}
Discover how supabase is being used around the world to quickly create outstanding
products and set new industry standards.
-
-
-
+
+
+ {caseStudyThumbs.map((caseStudy: any, i: number) => (
+
+
+
+ {caseStudy.description}
+
+
+
+ ))}
https://supabase.com
Latest news from Supabase
en
-
Mon, 13 Feb 2023 16:04:00 +0000
+
Mon, 13 Feb 2023 23:11:00 +0000
-
https://supabase.com/case-studies/xendit
Xendit use Supabase and create a full solution shipped to production in less than one week.
https://supabase.com/case-studies/xendit
As a payment processor, Xendit are responsible for verifying that all transactions are legal.
- Mon, 13 Feb 2023 16:04:00 +0000
+ Mon, 13 Feb 2023 23:11:00 +0000
-
https://supabase.com/case-studies/replenysh
Replenysh uses Supabase to implement OTP in less than 24 hours
https://supabase.com/case-studies/replenysh
With Supabase, Replenysh gets a slick auth experience, reduces DevOps overhead, and continues to scale with Postgres.
- Mon, 13 Feb 2023 16:04:00 +0000
+ Mon, 13 Feb 2023 23:11:00 +0000
-
https://supabase.com/case-studies/mobbin
How Mobbin migrated 200,000 users from Firebase for a better authentication experience.
https://supabase.com/case-studies/mobbin
Mobbin helps over 200,000 creators globally search and view the latest design patterns from well-known apps.
- Mon, 13 Feb 2023 16:04:00 +0000
+ Mon, 13 Feb 2023 23:11:00 +0000
-
https://supabase.com/case-studies/epsilon3
Epsilon3 digitize paper-based procedures in the space industry using telemetry data, simplifying testing and operations.
https://supabase.com/case-studies/epsilon3
Epsilon3 uses Supabase to help teams execute secure and reliable operations in an industry where project spend runs into the billions.
- Mon, 13 Feb 2023 16:04:00 +0000
+ Mon, 13 Feb 2023 23:11:00 +0000
diff --git a/apps/www/public/images/case-studies/logos/light/epsilon3.png b/apps/www/public/images/case-studies/logos/light/epsilon3.png
new file mode 100644
index 00000000000..77359ac47c6
Binary files /dev/null and b/apps/www/public/images/case-studies/logos/light/epsilon3.png differ
diff --git a/apps/www/public/images/case-studies/logos/light/mobbin.png b/apps/www/public/images/case-studies/logos/light/mobbin.png
new file mode 100644
index 00000000000..dcb9cc4c34f
Binary files /dev/null and b/apps/www/public/images/case-studies/logos/light/mobbin.png differ
diff --git a/apps/www/public/images/case-studies/logos/light/netlify.png b/apps/www/public/images/case-studies/logos/light/netlify.png
new file mode 100644
index 00000000000..d74b1b773c6
Binary files /dev/null and b/apps/www/public/images/case-studies/logos/light/netlify.png differ
diff --git a/apps/www/public/images/case-studies/logos/light/replenysh.png b/apps/www/public/images/case-studies/logos/light/replenysh.png
new file mode 100644
index 00000000000..e283aaf8ace
Binary files /dev/null and b/apps/www/public/images/case-studies/logos/light/replenysh.png differ
diff --git a/apps/www/public/images/case-studies/logos/light/vercel.png b/apps/www/public/images/case-studies/logos/light/vercel.png
new file mode 100644
index 00000000000..29f05bc6521
Binary files /dev/null and b/apps/www/public/images/case-studies/logos/light/vercel.png differ
diff --git a/apps/www/public/images/case-studies/logos/light/xendit.png b/apps/www/public/images/case-studies/logos/light/xendit.png
new file mode 100644
index 00000000000..d790fd4cffa
Binary files /dev/null and b/apps/www/public/images/case-studies/logos/light/xendit.png differ
diff --git a/apps/www/types/post.ts b/apps/www/types/post.ts
index 91bbc78363e..607120a9e09 100644
--- a/apps/www/types/post.ts
+++ b/apps/www/types/post.ts
@@ -20,6 +20,7 @@ type PostTypes = {
path: string
tags?: []
logo?: string
+ logo_inverse?: string
hideAuthor?: boolean
}
diff --git a/packages/ui/src/components/GlassPanel/GlassPanel.tsx b/packages/ui/src/components/GlassPanel/GlassPanel.tsx
index 08c2106ddf2..f4ecce64cb7 100644
--- a/packages/ui/src/components/GlassPanel/GlassPanel.tsx
+++ b/packages/ui/src/components/GlassPanel/GlassPanel.tsx
@@ -1,5 +1,6 @@
import { useTheme } from 'common/Providers'
import * as React from 'react'
+import Image from 'next/image'
interface Props {
title: string
@@ -8,11 +9,10 @@ interface Props {
children?: React.ReactNode
header?: string
background?: boolean
- img?: string
+ logo?: string
+ logoInverse?: string
hasLightIcon?: boolean
-
showLink?: boolean
-
showIconBg?: boolean
}
@@ -23,12 +23,15 @@ const GlassPanel = ({
children,
header,
background = true,
- img,
+ logo,
+ logoInverse,
hasLightIcon,
showLink = false,
showIconBg = false,
}: Props) => {
const { isDarkMode } = useTheme()
+ const showLogoInverse = logoInverse && isDarkMode
+ const showLogo = !showLogoInverse && logo
const IconBackground: React.FC = (props) => (
)
+ const LogoComponent = ({ logo, className }: { logo?: string; className?: string }) => (
+
+ )
+
return (
+ {/* keep normal logo if no logoInverse present */}
+ {showLogo &&
}
+ {showLogoInverse &&
}
+
{header && (