From 2fbd75d6f92fc28d5cf0c579411fb359d8c7f0db Mon Sep 17 00:00:00 2001 From: thorwebdev Date: Tue, 8 Feb 2022 17:19:29 +0800 Subject: [PATCH 01/67] feat: works with gallery page start --- www/pages/partners/Partners.css | 0 www/pages/partners/Partners.tsx | 102 ++++++++++++++++++++++++++++++++ www/pages/partners/TileGrid.tsx | 42 +++++++++++++ www/pages/partners/index.tsx | 3 + 4 files changed, 147 insertions(+) create mode 100644 www/pages/partners/Partners.css create mode 100644 www/pages/partners/Partners.tsx create mode 100644 www/pages/partners/TileGrid.tsx create mode 100644 www/pages/partners/index.tsx diff --git a/www/pages/partners/Partners.css b/www/pages/partners/Partners.css new file mode 100644 index 00000000000..e69de29bb2d diff --git a/www/pages/partners/Partners.tsx b/www/pages/partners/Partners.tsx new file mode 100644 index 00000000000..419ca7eeb25 --- /dev/null +++ b/www/pages/partners/Partners.tsx @@ -0,0 +1,102 @@ +import { Typography, Tabs } from '@supabase/ui' +import { NextSeo } from 'next-seo' +import Image from 'next/image' +import Link from 'next/link' +import { useRouter } from 'next/router' +import { useState } from 'react' +import DefaultLayout from '~/components/Layouts/Default' +import SectionContainer from '~/components/Layouts/SectionContainer' +import TileGrid from './TileGrid' + +interface Partner { + title: string + size: string + source: string +} + +export async function getStaticProps() { + const res = await fetch('https://example.com') + console.log(res.status) + // TODO fetch from DB + const partners: Partner[] = [ + { + title: 'IMG_4985.HEIC', + size: '3.9 MB', + source: + 'https://images.unsplash.com/photo-1582053433976-25c00369fc93?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=512&q=80', + }, + // More files... + ] + + return { + props: { + partners, + }, + revalidate: 3600, // In seconds + } +} + +interface Props { + partners: Partner[] +} + +function PartnerPage(props: Props) { + const { partners } = props + // base path for images + const { basePath } = useRouter() + + const [tabId, setTabId] = useState('integrations') + + const meta_title = 'Works with Supabase' + const meta_description = `Find Integration Partners and Expert Services that work with Supabase.` + + return ( + <> + + + + {`Find an ${ + tabId === 'integrations' ? 'Integration' : 'Expert' + }`} +
+
+ + + {partners ? : ''} + + + {partners ? : ''} + + +
+
+
+
+ + ) +} + +export default PartnerPage diff --git a/www/pages/partners/TileGrid.tsx b/www/pages/partners/TileGrid.tsx new file mode 100644 index 00000000000..76a298e31ea --- /dev/null +++ b/www/pages/partners/TileGrid.tsx @@ -0,0 +1,42 @@ +interface Partner { + title: string + size: string + source: string +} + +export default function TileGrid({ + category, + partners, +}: { + category: string + partners: Partner[] +}) { + console.log(partners, category) + return ( + + ) +} diff --git a/www/pages/partners/index.tsx b/www/pages/partners/index.tsx new file mode 100644 index 00000000000..ea9b0bc2383 --- /dev/null +++ b/www/pages/partners/index.tsx @@ -0,0 +1,3 @@ +import Partners from './Partners' + +export default Partners From 9b9df1c3e8668f085661c0b34b9c0c0e8d6d229d Mon Sep 17 00:00:00 2001 From: thorwebdev Date: Mon, 14 Feb 2022 16:54:46 +0800 Subject: [PATCH 02/67] fix: incremental static regeneration --- www/next-env.d.ts | 1 - www/pages/partners/Partners.css | 0 www/pages/partners/Partners.tsx | 102 ------------------- www/pages/partners/TileGrid.tsx | 2 +- www/pages/partners/index.tsx | 103 ++++++++++++++++++- www/public/rss.xml | 170 +++++++++++++++++--------------- www/public/sitemap_www.xml | 60 +++++++++++ 7 files changed, 251 insertions(+), 187 deletions(-) delete mode 100644 www/pages/partners/Partners.css delete mode 100644 www/pages/partners/Partners.tsx diff --git a/www/next-env.d.ts b/www/next-env.d.ts index 9bc3dd46b9d..4f11a03dc6c 100644 --- a/www/next-env.d.ts +++ b/www/next-env.d.ts @@ -1,5 +1,4 @@ /// -/// /// // NOTE: This file should not be edited diff --git a/www/pages/partners/Partners.css b/www/pages/partners/Partners.css deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/www/pages/partners/Partners.tsx b/www/pages/partners/Partners.tsx deleted file mode 100644 index 419ca7eeb25..00000000000 --- a/www/pages/partners/Partners.tsx +++ /dev/null @@ -1,102 +0,0 @@ -import { Typography, Tabs } from '@supabase/ui' -import { NextSeo } from 'next-seo' -import Image from 'next/image' -import Link from 'next/link' -import { useRouter } from 'next/router' -import { useState } from 'react' -import DefaultLayout from '~/components/Layouts/Default' -import SectionContainer from '~/components/Layouts/SectionContainer' -import TileGrid from './TileGrid' - -interface Partner { - title: string - size: string - source: string -} - -export async function getStaticProps() { - const res = await fetch('https://example.com') - console.log(res.status) - // TODO fetch from DB - const partners: Partner[] = [ - { - title: 'IMG_4985.HEIC', - size: '3.9 MB', - source: - 'https://images.unsplash.com/photo-1582053433976-25c00369fc93?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=512&q=80', - }, - // More files... - ] - - return { - props: { - partners, - }, - revalidate: 3600, // In seconds - } -} - -interface Props { - partners: Partner[] -} - -function PartnerPage(props: Props) { - const { partners } = props - // base path for images - const { basePath } = useRouter() - - const [tabId, setTabId] = useState('integrations') - - const meta_title = 'Works with Supabase' - const meta_description = `Find Integration Partners and Expert Services that work with Supabase.` - - return ( - <> - - - - {`Find an ${ - tabId === 'integrations' ? 'Integration' : 'Expert' - }`} -
-
- - - {partners ? : ''} - - - {partners ? : ''} - - -
-
-
-
- - ) -} - -export default PartnerPage diff --git a/www/pages/partners/TileGrid.tsx b/www/pages/partners/TileGrid.tsx index 76a298e31ea..f33fbf4fb1c 100644 --- a/www/pages/partners/TileGrid.tsx +++ b/www/pages/partners/TileGrid.tsx @@ -17,7 +17,7 @@ export default function TileGrid({ role="list" className="grid grid-cols-2 gap-x-4 gap-y-8 sm:grid-cols-3 sm:gap-x-6 lg:grid-cols-4 xl:gap-x-8" > - {partners.map((partner) => ( + {partners?.map((partner) => (
  • + + + + {`Find an ${ + tabId === 'integrations' ? 'Integration' : 'Expert' + }`} +
    +
    + + + {partners ? : ''} + + + {partners ? : ''} + + +
    +
    +
    +
    + + ) +} + +export default PartnerPage diff --git a/www/public/rss.xml b/www/public/rss.xml index 64c1ffa3175..ce5738259ce 100644 --- a/www/public/rss.xml +++ b/www/public/rss.xml @@ -5,7 +5,7 @@ https://supabase.com Latest news from Supabase en - Thu, 20 Jan 2022 00:00:00 GMT + Wed, 19 Jan 2022 16:00:00 GMT @@ -13,7 +13,15 @@ Supabase Beta December 2021 https://supabase.com/blog/2022/01/20/supabase-beta-december-2021 New crypto extension, Postgres videos, and a bunch of cool integrations. - Thu, 20 Jan 2022 00:00:00 GMT + Wed, 19 Jan 2022 16:00:00 GMT + + + + https://supabase.com/blog/2022/01/20/product-hunt-golden-kitty-awards-2021 + Golden Kitty Awards Ceremony Watch Party with Supabase + https://supabase.com/blog/2022/01/20/product-hunt-golden-kitty-awards-2021 + Hang out with us while watching the Product Hunt Golden Kitty Awards Ceremony + Wed, 19 Jan 2022 16:00:00 GMT @@ -21,7 +29,7 @@ Holiday Hackdays Winners 2021 https://supabase.com/blog/2021/12/17/holiday-hackdays-winners-2021 Celebrating many amazing projects submitted to our Holiday Hackdays Hackathon. - Fri, 17 Dec 2021 00:00:00 GMT + Thu, 16 Dec 2021 16:00:00 GMT @@ -29,7 +37,7 @@ Supabase Beta November 2021: Launch Week Recap https://supabase.com/blog/2021/12/15/beta-november-2021-launch-week-recap We wrapped up November with Supabase's third Launch Week. Here's all the awesome stuff that got shipped ... - Wed, 15 Dec 2021 00:00:00 GMT + Tue, 14 Dec 2021 16:00:00 GMT @@ -37,7 +45,7 @@ Kicking off the Holiday Hackdays https://supabase.com/blog/2021/12/03/supabase-holiday-hackdays-hackathon Build cool stuff and celebrate open-source software with us during the Holiday Hackdays! - Fri, 03 Dec 2021 00:00:00 GMT + Thu, 02 Dec 2021 16:00:00 GMT @@ -45,7 +53,7 @@ pg_graphql: A GraphQL extension for PostgreSQL https://supabase.com/blog/2021/12/03/pg-graphql GraphQL support is in development for PostgreSQL + Supabase. - Fri, 03 Dec 2021 00:00:00 GMT + Thu, 02 Dec 2021 16:00:00 GMT @@ -53,7 +61,7 @@ Five more things https://supabase.com/blog/2021/12/03/launch-week-three-friday-five-more-things It's never just one more thing! - Fri, 03 Dec 2021 00:00:00 GMT + Thu, 02 Dec 2021 16:00:00 GMT @@ -61,7 +69,7 @@ Supabase acquires Logflare https://supabase.com/blog/2021/12/02/supabase-acquires-logflare Today, we're ecstatic to announce that Logflare is joining Supabase. - Thu, 02 Dec 2021 00:00:00 GMT + Wed, 01 Dec 2021 16:00:00 GMT @@ -69,7 +77,7 @@ Realtime Postgres RLS now available on Supabase https://supabase.com/blog/2021/12/01/realtime-row-level-security-in-postgresql Realtime database changes are now broadcast to authenticated users, respecting the same PostgreSQL policies that you use for Row Level Security. - Wed, 01 Dec 2021 00:00:00 GMT + Tue, 30 Nov 2021 16:00:00 GMT @@ -77,7 +85,7 @@ Supabase Studio https://supabase.com/blog/2021/11/30/supabase-studio The same Dashboard that you're using on our Platform is now available for local development and Self-Hosting. - Tue, 30 Nov 2021 00:00:00 GMT + Mon, 29 Nov 2021 16:00:00 GMT @@ -85,7 +93,7 @@ Community Day https://supabase.com/blog/2021/11/29/community-day Kicking off launch week by highlighting the communities around Supabase. - Mon, 29 Nov 2021 00:00:00 GMT + Sun, 28 Nov 2021 16:00:00 GMT @@ -93,7 +101,7 @@ New in PostgreSQL 14: What every developer should know https://supabase.com/blog/2021/11/28/whats-new-in-postgres-14 A quick look at some new features and functionality in PostgreSQL 14. - Sun, 28 Nov 2021 00:00:00 GMT + Sat, 27 Nov 2021 16:00:00 GMT @@ -101,7 +109,7 @@ PostgREST 9 https://supabase.com/blog/2021/11/28/postgrest-9 New features and updates in PostgREST version 9. - Sat, 27 Nov 2021 00:00:00 GMT + Fri, 26 Nov 2021 16:00:00 GMT @@ -109,7 +117,7 @@ Supabase Launch Week III: Holiday Special https://supabase.com/blog/2021/11/26/supabase-launch-week-the-trilogy Tis the season to be shipping. - Fri, 26 Nov 2021 00:00:00 GMT + Thu, 25 Nov 2021 16:00:00 GMT @@ -117,7 +125,7 @@ How we launch at Supabase https://supabase.com/blog/2021/11/26/supabase-how-we-launch The history and methodology of Supabase Launch Week. - Fri, 26 Nov 2021 00:00:00 GMT + Thu, 25 Nov 2021 16:00:00 GMT @@ -125,7 +133,7 @@ Supabase Beta October 2021 https://supabase.com/blog/2021/11/05/supabase-beta-october-2021 Three new Auth providers, multi-schema support, and we're gearing up for another Launch Week. - Sun, 07 Nov 2021 00:00:00 GMT + Sat, 06 Nov 2021 16:00:00 GMT @@ -133,7 +141,7 @@ Supabase $30m Series A https://supabase.com/blog/2021/10/28/supabase-series-a Supabase just raised $30M, bringing our total funding to $36M. - Wed, 27 Oct 2021 23:00:00 GMT + Wed, 27 Oct 2021 16:00:00 GMT @@ -141,7 +149,7 @@ Replenysh uses Supabase to implement OTP in less than 24-hours https://supabase.com/blog/2021/10/19/replenysh-time-to-value-in-less-than-24-hours Learn how Replenysh uses Supabase to power the circular economy, redefining how brands interact with their customers and products. - Mon, 18 Oct 2021 23:00:00 GMT + Mon, 18 Oct 2021 16:00:00 GMT @@ -149,7 +157,7 @@ Hacktoberfest Hackathon Winners 2021 https://supabase.com/blog/2021/10/14/hacktoberfest-hackathon-winners-2021 Celebrating many amazing projects submitted to our Hacktoberfest Hackathon. - Wed, 13 Oct 2021 23:00:00 GMT + Wed, 13 Oct 2021 16:00:00 GMT @@ -157,7 +165,7 @@ Supabase Beta Sept 2021 https://supabase.com/blog/2021/10/04/supabase-beta-sept-2021 Hackathon, Aborting request, UI updates, and now Hiring. - Sun, 03 Oct 2021 23:00:00 GMT + Sun, 03 Oct 2021 16:00:00 GMT @@ -165,7 +173,7 @@ Supabase Hacktoberfest Hackathon 2021 https://supabase.com/blog/2021/09/28/supabase-hacktoberfest-hackathon-2021 We're running another Supabase Hackathon during Hacktoberfest! - Mon, 27 Sep 2021 23:00:00 GMT + Mon, 27 Sep 2021 16:00:00 GMT @@ -173,7 +181,7 @@ Supabase Beta August 2021 https://supabase.com/blog/2021/09/10/supabase-beta-august-2021 Fundraising, Realtime Security, custom SMS templates, and deployments in South Korea. - Thu, 09 Sep 2021 23:00:00 GMT + Thu, 09 Sep 2021 16:00:00 GMT @@ -181,7 +189,7 @@ Supabase Beta July 2021 https://supabase.com/blog/2021/08/12/supabase-beta-july-2021 Discord Logins, Vercel Integration, Full text search, and OAuth guides. - Wed, 11 Aug 2021 23:00:00 GMT + Wed, 11 Aug 2021 16:00:00 GMT @@ -189,7 +197,7 @@ Open Source Hackathon Winners https://supabase.com/blog/2021/08/09/hackathon-winners Let the medal ceremony begin for the best projects submitted during the Supabase Hackathon. - Sun, 08 Aug 2021 23:00:00 GMT + Sun, 08 Aug 2021 16:00:00 GMT @@ -197,7 +205,7 @@ Supabase Swag Store https://supabase.com/blog/2021/07/30/supabase-swag-store Today we are officially launching the Supabase Swag Store. - Thu, 29 Jul 2021 23:00:00 GMT + Thu, 29 Jul 2021 16:00:00 GMT @@ -205,7 +213,7 @@ Updates for Supabase Functions https://supabase.com/blog/2021/07/30/supabase-functions-updates The question on everyone's mind - are we launching Supabase Functions? Well, it's complicated. - Thu, 29 Jul 2021 23:00:00 GMT + Thu, 29 Jul 2021 16:00:00 GMT @@ -213,7 +221,7 @@ The Supabase Hackathon https://supabase.com/blog/2021/07/30/1-the-supabase-hackathon A whole week of Hacking for Fun and Prizes. - Thu, 29 Jul 2021 23:00:00 GMT + Thu, 29 Jul 2021 16:00:00 GMT @@ -221,7 +229,7 @@ Supabase Reports and Metrics https://supabase.com/blog/2021/07/29/supabase-reports-and-metrics We're exposing a full set of metrics in your projects, so that you can build better (and faster) products for your users. - Wed, 28 Jul 2021 23:00:00 GMT + Wed, 28 Jul 2021 16:00:00 GMT @@ -229,7 +237,7 @@ Supabase Auth v2: Phone Auth now available https://supabase.com/blog/2021/07/28/supabase-auth-passwordless-sms-login Phone Auth is available today on all new and existing Supabase projects. - Tue, 27 Jul 2021 23:00:00 GMT + Tue, 27 Jul 2021 16:00:00 GMT @@ -237,7 +245,7 @@ Mobbin uses Supabase to authenticate 200,000 users https://supabase.com/blog/2021/07/28/mobbin-supabase-200000-users Learn how Mobbin migrated 200,000 users from Firebase for a better authentication experience. - Tue, 27 Jul 2021 23:00:00 GMT + Tue, 27 Jul 2021 16:00:00 GMT @@ -245,7 +253,7 @@ Supabase Storage now in Beta https://supabase.com/blog/2021/07/27/storage-beta Supabase Storage moves into Beta. - Mon, 26 Jul 2021 23:00:00 GMT + Mon, 26 Jul 2021 16:00:00 GMT @@ -253,7 +261,7 @@ Spot: a video sharing app built with Flutter https://supabase.com/blog/2021/07/27/spot-flutter-with-postgres Spot is a geolocation-based video-sharing app with some social networking features. - Mon, 26 Jul 2021 23:00:00 GMT + Mon, 26 Jul 2021 16:00:00 GMT @@ -261,7 +269,7 @@ Supabase is now on Postgres 13.3 https://supabase.com/blog/2021/07/26/supabase-postgres-13 From today, new Supabase projects will be on a version of Supabase Postgres that runs on Postgres 13.3. - Sun, 25 Jul 2021 23:00:00 GMT + Sun, 25 Jul 2021 16:00:00 GMT @@ -269,7 +277,7 @@ Supabase Community Day https://supabase.com/blog/2021/07/26/supabase-community-day Community Day - Sun, 25 Jul 2021 23:00:00 GMT + Sun, 25 Jul 2021 16:00:00 GMT @@ -277,7 +285,7 @@ Epsilon3 Self-Host Supabase To Revolutionize Space Operations https://supabase.com/blog/2021/07/26/epsilon3-self-hosting Learn how the team at Epsilon3 use Supabase to help teams execute secure and reliable operations in an industry that project spend runs into the billions. - Sun, 25 Jul 2021 23:00:00 GMT + Sun, 25 Jul 2021 16:00:00 GMT @@ -285,7 +293,7 @@ Supabase Launch Week II: The SQL https://supabase.com/blog/2021/07/22/supabase-launch-week-sql Five days of Supabase. Again. - Wed, 21 Jul 2021 23:00:00 GMT + Wed, 21 Jul 2021 16:00:00 GMT @@ -293,7 +301,7 @@ Protecting reserved roles with PostgreSQL Hooks https://supabase.com/blog/2021/07/01/roles-postgres-hooks Using Postgres Hooks to protect functionality in your Postgres database. - Thu, 01 Jul 2021 23:00:00 GMT + Thu, 01 Jul 2021 16:00:00 GMT @@ -301,7 +309,7 @@ Supabase Beta June 2021 https://supabase.com/blog/2021/07/02/supabase-beta-june-2021 Discord Logins, Vercel Integration, Full text search, and OAuth guides. - Tue, 01 Jun 2021 23:00:00 GMT + Tue, 01 Jun 2021 16:00:00 GMT @@ -309,7 +317,7 @@ Supabase Beta May 2021 https://supabase.com/blog/2021/06/02/supabase-beta-may-2021 Apple & Twitter Logins, Supabase Grid, Go & Swift Libraries. - Tue, 01 Jun 2021 23:00:00 GMT + Tue, 01 Jun 2021 16:00:00 GMT @@ -317,7 +325,7 @@ Supabase Beta April 2021 https://supabase.com/blog/2021/05/03/supabase-beta-april-2021 Supabase "gardening" - stability, security, and community support. - Tue, 04 May 2021 23:00:00 GMT + Tue, 04 May 2021 16:00:00 GMT @@ -325,7 +333,7 @@ Supabase Beta March 2021 https://supabase.com/blog/2021/04/06/supabase-beta-march-2021 Launch week, Storage, Supabase CLI, Connection Pooling, Supabase UI, and Pricing. - Mon, 05 Apr 2021 23:00:00 GMT + Mon, 05 Apr 2021 16:00:00 GMT @@ -333,7 +341,7 @@ Workflows are coming to Supabase https://supabase.com/blog/2021/04/02/supabase-workflows Functions are great, but you know what's better? - Thu, 01 Apr 2021 23:00:00 GMT + Thu, 01 Apr 2021 16:00:00 GMT @@ -341,7 +349,7 @@ PgBouncer is now available in Supabase https://supabase.com/blog/2021/04/02/supabase-pgbouncer Better support for Serverless and Postgres. - Thu, 01 Apr 2021 23:00:00 GMT + Thu, 01 Apr 2021 16:00:00 GMT @@ -349,7 +357,7 @@ Supabase Dot Com https://supabase.com/blog/2021/04/02/supabase-dot-com The Supabase Domain name is changing. - Thu, 01 Apr 2021 23:00:00 GMT + Thu, 01 Apr 2021 16:00:00 GMT @@ -357,7 +365,7 @@ Supabase Launches NFT Marketplace https://supabase.com/blog/2021/04/01/supabase-nft-marketplace A fully encrypted NFT platform to protect and transact your digital assets - Wed, 31 Mar 2021 23:00:00 GMT + Wed, 31 Mar 2021 16:00:00 GMT @@ -365,7 +373,7 @@ Supabase CLI https://supabase.com/blog/2021/03/31/supabase-cli Local development, database migrations, and self-hosting. - Tue, 30 Mar 2021 23:00:00 GMT + Tue, 30 Mar 2021 16:00:00 GMT @@ -373,7 +381,7 @@ Storage is now available in Supabase https://supabase.com/blog/2021/03/30/supabase-storage Launching Supabase Storage and how you can use it in your apps - Mon, 29 Mar 2021 23:00:00 GMT + Mon, 29 Mar 2021 16:00:00 GMT @@ -381,7 +389,7 @@ Supabase Beta Pricing https://supabase.com/blog/2021/03/29/pricing Supabase launches Beta pricing structure - Sun, 28 Mar 2021 23:00:00 GMT + Sun, 28 Mar 2021 16:00:00 GMT @@ -389,7 +397,7 @@ Launch week https://supabase.com/blog/2021/03/25/launch-week Five days of Supabase. - Thu, 25 Mar 2021 00:00:00 GMT + Wed, 24 Mar 2021 16:00:00 GMT @@ -397,7 +405,7 @@ Angels of Supabase https://supabase.com/blog/2021/03/25/angels-of-supabase Meet the investors of Supabase. - Thu, 25 Mar 2021 00:00:00 GMT + Wed, 24 Mar 2021 16:00:00 GMT @@ -405,7 +413,7 @@ Developers stay up to date with intheloop.dev https://supabase.com/blog/2021/03/22/In-The-Loop Learn why Kevin is building intheloop.dev with Supabase - Mon, 22 Mar 2021 00:00:00 GMT + Sun, 21 Mar 2021 16:00:00 GMT @@ -413,7 +421,7 @@ Using Supabase in Replit https://supabase.com/blog/2021/03/11/using-supabase-replit Free hosted relational database from within your node.js repl - Thu, 11 Mar 2021 00:00:00 GMT + Wed, 10 Mar 2021 16:00:00 GMT @@ -421,7 +429,7 @@ Toad, a link shortener with simple APIs for low-coders https://supabase.com/blog/2021/03/08/toad-a-link-shortener-with-simple-apis-for-low-coders An easy-to-use link shortening tool with simple APIs - Mon, 08 Mar 2021 00:00:00 GMT + Sun, 07 Mar 2021 16:00:00 GMT @@ -429,7 +437,7 @@ Postgres as a CRON Server https://supabase.com/blog/2021/03/05/postgres-as-a-cron-server Running repetitive tasks with your Postgres database. - Fri, 05 Mar 2021 00:00:00 GMT + Thu, 04 Mar 2021 16:00:00 GMT @@ -437,7 +445,7 @@ Supabase Beta February 2021 https://supabase.com/blog/2021/03/02/supabase-beta-february-2021 One year of building. - Tue, 02 Mar 2021 00:00:00 GMT + Mon, 01 Mar 2021 16:00:00 GMT @@ -445,7 +453,7 @@ Cracking PostgreSQL Interview Questions https://supabase.com/blog/2021/02/27/cracking-postgres-interview Understand the top PostgreSQL Interview Questions - Sat, 27 Feb 2021 00:00:00 GMT + Fri, 26 Feb 2021 16:00:00 GMT @@ -453,7 +461,7 @@ Roboflow.com choose Supabase to power Paint.wtf leaderboard https://supabase.com/blog/2021/02/09/case-study-roboflow Learn how Roboflow.com used Supabase to build their Paint.wtf leaderboard - Tue, 09 Feb 2021 00:00:00 GMT + Mon, 08 Feb 2021 16:00:00 GMT @@ -461,7 +469,7 @@ Supabase Beta January 2021 https://supabase.com/blog/2021/02/02/supabase-beta-january-2021 Eleven months of building. - Tue, 02 Feb 2021 00:00:00 GMT + Mon, 01 Feb 2021 16:00:00 GMT @@ -469,7 +477,7 @@ Supabase Beta December 2020 https://supabase.com/blog/2021/01/02/supabase-beta-december-2020 Ten months of building. - Sat, 02 Jan 2021 00:00:00 GMT + Fri, 01 Jan 2021 16:00:00 GMT @@ -477,7 +485,7 @@ Making the Supabase Dashboard Supa-fast https://supabase.com/blog/2020/12/13/supabase-dashboard-performance Improving the performance of the Supabase dashboard - Sun, 13 Dec 2020 00:00:00 GMT + Sat, 12 Dec 2020 16:00:00 GMT @@ -485,7 +493,7 @@ Supabase Partners With Strive School To Help Teach Open Source https://supabase.com/blog/2020/12/02/supabase-striveschool Supabase Partners With Strive School To Help Teach Open Source To The Next Generation Of Developers - Wed, 02 Dec 2020 00:00:00 GMT + Tue, 01 Dec 2020 16:00:00 GMT @@ -493,7 +501,7 @@ Xendit Built a Counter-Fraud Watchlist for the Fintech Industry https://supabase.com/blog/2020/12/02/case-study-xendit See how Xendit use Supabase to build a full-text search engine. - Wed, 02 Dec 2020 00:00:00 GMT + Tue, 01 Dec 2020 16:00:00 GMT @@ -501,7 +509,7 @@ TAYFA Built a No-Code Website Builder in Seven Days https://supabase.com/blog/2020/12/02/case-study-tayfa See how Tayfa went from idea to paying customer in less than 30 days. - Wed, 02 Dec 2020 00:00:00 GMT + Tue, 01 Dec 2020 16:00:00 GMT @@ -509,7 +517,7 @@ Monitoro Built a Web Crawler Handling Millions of API Requests https://supabase.com/blog/2020/12/02/case-study-monitoro See how Monitoro built an automated scraping platform using Supabase. - Wed, 02 Dec 2020 00:00:00 GMT + Tue, 01 Dec 2020 16:00:00 GMT @@ -517,7 +525,7 @@ Supabase Alpha November 2020 https://supabase.com/blog/2020/12/01/supabase-alpha-november-2020 Nine months of building. - Tue, 01 Dec 2020 00:00:00 GMT + Mon, 30 Nov 2020 16:00:00 GMT @@ -525,7 +533,7 @@ Postgres Views https://supabase.com/blog/2020/11/18/postgresql-views Creating and using a view in PostgreSQL. - Wed, 18 Nov 2020 00:00:00 GMT + Tue, 17 Nov 2020 16:00:00 GMT @@ -533,7 +541,7 @@ Supabase Alpha October 2020 https://supabase.com/blog/2020/11/02/supabase-alpha-october-2020 Eight months of building. - Mon, 02 Nov 2020 00:00:00 GMT + Sun, 01 Nov 2020 16:00:00 GMT @@ -541,7 +549,7 @@ Supabase.js 1.0 https://supabase.com/blog/2020/10/30/improved-dx We're releasing a new version of our Supabase client with some awesome new improvements. - Fri, 30 Oct 2020 00:00:00 GMT + Thu, 29 Oct 2020 16:00:00 GMT @@ -549,7 +557,7 @@ Supabase Alpha September 2020 https://supabase.com/blog/2020/10/03/supabase-alpha-september-2020 Seven months of building. - Fri, 02 Oct 2020 23:00:00 GMT + Fri, 02 Oct 2020 16:00:00 GMT @@ -557,7 +565,7 @@ Supabase Hacktoberfest 2020 https://supabase.com/blog/2020/09/11/supabase-hacktoberfest-2020 Join us for a celebration of open source software and learn how to contribute to Supabase. - Thu, 10 Sep 2020 23:00:00 GMT + Thu, 10 Sep 2020 16:00:00 GMT @@ -565,7 +573,7 @@ Supabase Alpha August 2020 https://supabase.com/blog/2020/09/03/supabase-alpha-august-2020 Six months of building - Wed, 02 Sep 2020 23:00:00 GMT + Wed, 02 Sep 2020 16:00:00 GMT @@ -573,7 +581,7 @@ Supabase Auth https://supabase.com/blog/2020/08/05/supabase-auth Authenticate and authorize your users with Supabase Auth - Tue, 04 Aug 2020 23:00:00 GMT + Tue, 04 Aug 2020 16:00:00 GMT @@ -581,7 +589,7 @@ Supabase Alpha July 2020 https://supabase.com/blog/2020/08/02/supabase-alpha-july-2020 Five months of building - Sat, 01 Aug 2020 23:00:00 GMT + Sat, 01 Aug 2020 16:00:00 GMT @@ -589,7 +597,7 @@ Continuous PostgreSQL Backups using WAL-G https://supabase.com/blog/2020/08/02/continuous-postgresql-backup-walg Have you ever wanted to restore your database's state to a particular moment in time? This post explains how, using WAL-G. - Sat, 01 Aug 2020 23:00:00 GMT + Sat, 01 Aug 2020 16:00:00 GMT @@ -597,7 +605,7 @@ Alpha Launch Postmortem https://supabase.com/blog/2020/07/10/alpha-launch-postmortem Everything that went wrong with Supabase's launch - Thu, 09 Jul 2020 23:00:00 GMT + Thu, 09 Jul 2020 16:00:00 GMT @@ -605,7 +613,7 @@ What are PostgreSQL Templates? https://supabase.com/blog/2020/07/09/postgresql-templates What are PostgreSQL templates and what are they used for? - Wed, 08 Jul 2020 23:00:00 GMT + Wed, 08 Jul 2020 16:00:00 GMT @@ -613,7 +621,7 @@ Physical vs Logical Backups in PostgreSQL https://supabase.com/blog/2020/07/17/postgresql-physical-logical-backups What are physical and logical backups in Postgres? - Mon, 06 Jul 2020 23:00:00 GMT + Mon, 06 Jul 2020 16:00:00 GMT @@ -621,7 +629,7 @@ Supabase Alpha June 2020 https://supabase.com/blog/2020/07/01/supabase-alpha-june-2020 Four months of building - Tue, 30 Jun 2020 23:00:00 GMT + Tue, 30 Jun 2020 16:00:00 GMT @@ -629,7 +637,7 @@ Steve Chavez has joined Supabase https://supabase.com/blog/2020/06/15/supabase-steve-chavez Steve joins Supabase to help build Auth. - Sun, 14 Jun 2020 23:00:00 GMT + Sun, 14 Jun 2020 16:00:00 GMT @@ -637,7 +645,7 @@ Supabase Alpha May 2020 https://supabase.com/blog/2020/06/01/supabase-alpha-may-2020 Three months of building - Sun, 31 May 2020 23:00:00 GMT + Sun, 31 May 2020 16:00:00 GMT @@ -645,7 +653,7 @@ Supabase Alpha April 2020 https://supabase.com/blog/2020/05/01/supabase-alpha-april-2020 Two months of building - Sun, 31 May 2020 23:00:00 GMT + Sun, 31 May 2020 16:00:00 GMT diff --git a/www/public/sitemap_www.xml b/www/public/sitemap_www.xml index 4e17d01e0bd..3601d2f9825 100644 --- a/www/public/sitemap_www.xml +++ b/www/public/sitemap_www.xml @@ -1,5 +1,11 @@ + + https://supabase.com/404 + weekly + 0.5 + + https://supabase.com/_app weekly @@ -48,6 +54,18 @@ 0.5 + + https://supabase.com/partners/Partners + weekly + 0.5 + + + + https://supabase.com/partners/TileGrid + weekly + 0.5 + + https://supabase.com/storage weekly @@ -499,4 +517,46 @@ weekly 0.5 + + + https://supabase.com/blog/2021/12/03/launch-week-three-friday-five-more-things + weekly + 0.5 + + + + https://supabase.com/blog/2021/12/03/pg-graphql + weekly + 0.5 + + + + https://supabase.com/blog/2021/12/03/supabase-holiday-hackdays-hackathon + weekly + 0.5 + + + + https://supabase.com/blog/2021/12/15/beta-november-2021-launch-week-recap + weekly + 0.5 + + + + https://supabase.com/blog/2021/12/17/holiday-hackdays-winners-2021 + weekly + 0.5 + + + + https://supabase.com/blog/2022/01/20/product-hunt-golden-kitty-awards-2021 + weekly + 0.5 + + + + https://supabase.com/blog/2022/01/20/supabase-beta-december-2021 + weekly + 0.5 + From e631ed0a09c3f99413397f9e0d0ae5d09ddef1ea Mon Sep 17 00:00:00 2001 From: thorwebdev Date: Fri, 4 Mar 2022 18:14:15 +0800 Subject: [PATCH 03/67] feat: add partner pages. --- www/components/Partners/BecomeAPartners.tsx | 10 ++ www/components/Partners/TileGrid.tsx | 42 +++++ www/next.config.js | 5 + www/pages/partners/TileGrid.tsx | 42 ----- www/pages/partners/[slug].tsx | 183 ++++++++++++++++++++ www/pages/partners/experts/index.tsx | 130 ++++++++++++++ www/pages/partners/index.tsx | 102 ----------- www/pages/partners/integrations/index.tsx | 132 ++++++++++++++ www/public/sitemap_www.xml | 14 +- www/types/partners.ts | 15 ++ 10 files changed, 524 insertions(+), 151 deletions(-) create mode 100644 www/components/Partners/BecomeAPartners.tsx create mode 100644 www/components/Partners/TileGrid.tsx delete mode 100644 www/pages/partners/TileGrid.tsx create mode 100644 www/pages/partners/[slug].tsx create mode 100644 www/pages/partners/experts/index.tsx delete mode 100644 www/pages/partners/index.tsx create mode 100644 www/pages/partners/integrations/index.tsx create mode 100644 www/types/partners.ts diff --git a/www/components/Partners/BecomeAPartners.tsx b/www/components/Partners/BecomeAPartners.tsx new file mode 100644 index 00000000000..6ec86e9d442 --- /dev/null +++ b/www/components/Partners/BecomeAPartners.tsx @@ -0,0 +1,10 @@ +import { SupabaseClient } from '@supabase/supabase-js' +import { Typography } from '@supabase/ui' + +export default function BecomeAPartner({ supabase }: { supabase: SupabaseClient }) { + return ( +
    + Become a Partner +
    + ) +} diff --git a/www/components/Partners/TileGrid.tsx b/www/components/Partners/TileGrid.tsx new file mode 100644 index 00000000000..537055f2652 --- /dev/null +++ b/www/components/Partners/TileGrid.tsx @@ -0,0 +1,42 @@ +import { Card, Space, Typography } from '@supabase/ui' +import { Partner } from '~/types/partners' + +export default function TileGrid({ + partnersByCategory, +}: { + partnersByCategory: { [category: string]: Partner[] } +}) { + return ( + <> + {Object.keys(partnersByCategory).map((cat) => ( +
    + {cat} +
    + {partnersByCategory[cat].map((p) => ( + + + +
    +
    + + {p.category} + + {p.title} +
    + {p.title} +
    + {p.description} +
    +
    +
    + ))} +
    +
    + ))} + + ) +} diff --git a/www/next.config.js b/www/next.config.js index adfd33c38b1..c5d4c7ea558 100644 --- a/www/next.config.js +++ b/www/next.config.js @@ -635,6 +635,11 @@ module.exports = withMDX({ source: '/guides/auth', destination: '/guides/auth/intro', }, + { + permanent: false, + source: '/partners', + destination: '/partners/integrations', + }, ] }, }) diff --git a/www/pages/partners/TileGrid.tsx b/www/pages/partners/TileGrid.tsx deleted file mode 100644 index f33fbf4fb1c..00000000000 --- a/www/pages/partners/TileGrid.tsx +++ /dev/null @@ -1,42 +0,0 @@ -interface Partner { - title: string - size: string - source: string -} - -export default function TileGrid({ - category, - partners, -}: { - category: string - partners: Partner[] -}) { - console.log(partners, category) - return ( -
      - {partners?.map((partner) => ( -
    • -
      - - -
      -

      - {partner.title} -

      -

      - {partner.size} -

      -
    • - ))} -
    - ) -} diff --git a/www/pages/partners/[slug].tsx b/www/pages/partners/[slug].tsx new file mode 100644 index 00000000000..56ea9fadbbd --- /dev/null +++ b/www/pages/partners/[slug].tsx @@ -0,0 +1,183 @@ +import { GetStaticPaths, GetStaticProps } from 'next' +import Link from 'next/link' +import { createClient } from '@supabase/supabase-js' +import { Partner } from '~/types/partners' +import { NextSeo } from 'next-seo' +import DefaultLayout from '~/components/Layouts/Default' +import SectionContainer from '~/components/Layouts/SectionContainer' +import { Typography, IconChevronLeft, Divider, IconExternalLink } from '@supabase/ui' +import { Swiper, SwiperSlide } from 'swiper/react' +import Error404 from '../404' + +const supabase = createClient( + 'https://obuldanrptloktxcffvn.supabase.co', + 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYW5vbiIsImlhdCI6MTYzNzY1NjAxNSwiZXhwIjoxOTUzMjMyMDE1fQ.0sfp_Njf7l4g-nOCF5a1TQE11rPqtz8Y10uctIetkBA' +) + +function Partner({ partner }: { partner: Partner }) { + if (!partner) return + return ( + <> + + + +
    + {/* Back button */} + + + + Back + + + +
    + {partner.title} + {partner.title} +
    +
    +
    + + {partner.images.map((image: any, i: number) => { + return ( + +
    + {partner.title} +
    +
    + ) + })} +
    +
    +
    +
    +
    + Overview + {partner.overview} +
    +
    + Details +
    + Developer + {partner.developer} +
    + +
    + Category + + {partner.category} + +
    + + + +
    + Documentation + + + Read + + +
    +
    +
    +
    +
    +
    + + ) +} + +// This function gets called at build time +export const getStaticPaths: GetStaticPaths = async () => { + const { data: slugs } = await supabase.from('partners').select('slug') + const paths: { + params: { slug: string } + locale?: string | undefined + }[] = [] + slugs?.map((slug) => ({ + params: { + slug, + }, + })) + return { + paths, + fallback: 'blocking', + } +} + +// This also gets called at build time +export const getStaticProps: GetStaticProps = async ({ params }) => { + const { data: partner } = await supabase + .from('partners') + .select('*') + .eq('slug', params!.slug as string) + .single() + + return { + props: { partner }, + revalidate: 18000, // In seconds - refresh every 5 hours + } +} + +export default Partner diff --git a/www/pages/partners/experts/index.tsx b/www/pages/partners/experts/index.tsx new file mode 100644 index 00000000000..5541e22aa8f --- /dev/null +++ b/www/pages/partners/experts/index.tsx @@ -0,0 +1,130 @@ +import { createClient } from '@supabase/supabase-js' +import Link from 'next/link' +import { Typography, IconArrowRight, Input, IconSearch, Select } from '@supabase/ui' +import { NextSeo } from 'next-seo' +import { useRouter } from 'next/router' +import DefaultLayout from '~/components/Layouts/Default' +import SectionContainer from '~/components/Layouts/SectionContainer' +import { Partner } from '~/types/partners' +import TileGrid from '../../../components/Partners/TileGrid' +import BecomeAPartner from '~/components/Partners/BecomeAPartners' + +const supabase = createClient( + 'https://obuldanrptloktxcffvn.supabase.co', + 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYW5vbiIsImlhdCI6MTYzNzY1NjAxNSwiZXhwIjoxOTUzMjMyMDE1fQ.0sfp_Njf7l4g-nOCF5a1TQE11rPqtz8Y10uctIetkBA' +) + +export async function getStaticProps() { + const { data: partners } = await supabase + .from('partners') + .select('*') + .eq('approved', true) + .eq('type', 'expert') + .order('category') + .order('title') + + return { + props: { + partners, + }, + revalidate: 18000, // In seconds - refresh every 5 hours + } +} + +interface Props { + partners: Partner[] +} + +function ExpertPartnersPage(props: Props) { + const { partners } = props + const partnersByCategory: { [category: string]: Partner[] } = {} + partners.map( + (p) => (partnersByCategory[p.category] = [...(partnersByCategory[p.category] ?? []), p]) + ) + const router = useRouter() + + const meta_title = 'Works With Supabase' + const meta_description = `Find Integration Partners and Expert Services that work with Supabase.` + + return ( + <> + + + + {/* Horizontal link menu */} + + {/* Title */} + Find an Expert + {/* Search Bar */} +
    + } placeholder="Search all partners" type="text" /> + +
    + {/* Partner Tiles */} +
    + {partners.length ? ( + + ) : ( + Coming Soon... + )} +
    + {/* Become a partner form */} + +
    +
    + + ) +} + +export default ExpertPartnersPage diff --git a/www/pages/partners/index.tsx b/www/pages/partners/index.tsx deleted file mode 100644 index 419ca7eeb25..00000000000 --- a/www/pages/partners/index.tsx +++ /dev/null @@ -1,102 +0,0 @@ -import { Typography, Tabs } from '@supabase/ui' -import { NextSeo } from 'next-seo' -import Image from 'next/image' -import Link from 'next/link' -import { useRouter } from 'next/router' -import { useState } from 'react' -import DefaultLayout from '~/components/Layouts/Default' -import SectionContainer from '~/components/Layouts/SectionContainer' -import TileGrid from './TileGrid' - -interface Partner { - title: string - size: string - source: string -} - -export async function getStaticProps() { - const res = await fetch('https://example.com') - console.log(res.status) - // TODO fetch from DB - const partners: Partner[] = [ - { - title: 'IMG_4985.HEIC', - size: '3.9 MB', - source: - 'https://images.unsplash.com/photo-1582053433976-25c00369fc93?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=512&q=80', - }, - // More files... - ] - - return { - props: { - partners, - }, - revalidate: 3600, // In seconds - } -} - -interface Props { - partners: Partner[] -} - -function PartnerPage(props: Props) { - const { partners } = props - // base path for images - const { basePath } = useRouter() - - const [tabId, setTabId] = useState('integrations') - - const meta_title = 'Works with Supabase' - const meta_description = `Find Integration Partners and Expert Services that work with Supabase.` - - return ( - <> - - - - {`Find an ${ - tabId === 'integrations' ? 'Integration' : 'Expert' - }`} -
    -
    - - - {partners ? : ''} - - - {partners ? : ''} - - -
    -
    -
    -
    - - ) -} - -export default PartnerPage diff --git a/www/pages/partners/integrations/index.tsx b/www/pages/partners/integrations/index.tsx new file mode 100644 index 00000000000..3c9867d55f4 --- /dev/null +++ b/www/pages/partners/integrations/index.tsx @@ -0,0 +1,132 @@ +import { createClient } from '@supabase/supabase-js' +import Link from 'next/link' +import { Typography, IconArrowRight, Input, IconSearch, Select } from '@supabase/ui' +import { NextSeo } from 'next-seo' +import { useRouter } from 'next/router' +import DefaultLayout from '~/components/Layouts/Default' +import SectionContainer from '~/components/Layouts/SectionContainer' +import { Partner } from '~/types/partners' +import TileGrid from '../../../components/Partners/TileGrid' +import BecomeAPartner from '~/components/Partners/BecomeAPartners' + +const supabase = createClient( + 'https://obuldanrptloktxcffvn.supabase.co', + 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYW5vbiIsImlhdCI6MTYzNzY1NjAxNSwiZXhwIjoxOTUzMjMyMDE1fQ.0sfp_Njf7l4g-nOCF5a1TQE11rPqtz8Y10uctIetkBA' +) + +export async function getStaticProps() { + const { data: partners } = await supabase + .from('partners') + .select('*') + .eq('approved', true) + .eq('type', 'technology') + .order('category') + .order('title') + + return { + props: { + partners, + }, + revalidate: 18000, // In seconds - refresh every 5 hours + } +} + +interface Props { + partners: Partner[] +} + +function IntegrationPartnersPage(props: Props) { + const { partners } = props + const partnersByCategory: { [category: string]: Partner[] } = {} + partners.map( + (p) => (partnersByCategory[p.category] = [...(partnersByCategory[p.category] ?? []), p]) + ) + const router = useRouter() + + const meta_title = 'Works With Supabase' + const meta_description = `Find Integration Partners and Expert Services that work with Supabase.` + + return ( + <> + + + + {/* Horizontal link menu */} + + {/* Title */} + Find an Integration + {/* Search Bar */} +
    + } placeholder="Search all partners" type="text" /> + +
    + {/* Partner Tiles */} +
    + {partners.length ? ( + + ) : ( + Coming Soon... + )} +
    + {/* Become a partner form */} + +
    +
    + + ) +} + +export default IntegrationPartnersPage diff --git a/www/public/sitemap_www.xml b/www/public/sitemap_www.xml index 3601d2f9825..b76e3a62496 100644 --- a/www/public/sitemap_www.xml +++ b/www/public/sitemap_www.xml @@ -55,13 +55,7 @@ - https://supabase.com/partners/Partners - weekly - 0.5 - - - - https://supabase.com/partners/TileGrid + https://supabase.com/partners/[slug] weekly 0.5 @@ -559,4 +553,10 @@ weekly 0.5 + + + https://supabase.com/blog/2022/02/22/supabase-beta-january-2022 + weekly + 0.5 + diff --git a/www/types/partners.ts b/www/types/partners.ts new file mode 100644 index 00000000000..cda16b554ba --- /dev/null +++ b/www/types/partners.ts @@ -0,0 +1,15 @@ +export interface Partner { + id: number + slug: string + type: 'technology' | 'expert' + category: string + developer: string + title: string + description: string + logo: string + images: string[] + overview: string + website: string + docs: string + approved: boolean +} From f67c6020f87f3568f3c084dbec155df9655901e0 Mon Sep 17 00:00:00 2001 From: thorwebdev Date: Fri, 4 Mar 2022 19:56:29 +0800 Subject: [PATCH 04/67] feat: add become a partner form. --- www/components/Partners/BecomeAPartners.tsx | 393 +++++++++++++++++++- www/pages/partners/experts/index.tsx | 11 +- www/pages/partners/integrations/index.tsx | 11 +- www/types/partners.ts | 14 + 4 files changed, 422 insertions(+), 7 deletions(-) diff --git a/www/components/Partners/BecomeAPartners.tsx b/www/components/Partners/BecomeAPartners.tsx index 6ec86e9d442..d27a3372fb8 100644 --- a/www/components/Partners/BecomeAPartners.tsx +++ b/www/components/Partners/BecomeAPartners.tsx @@ -1,10 +1,401 @@ import { SupabaseClient } from '@supabase/supabase-js' -import { Typography } from '@supabase/ui' +import { Select, Typography, Input, InputNumber, Button } from '@supabase/ui' +import { useState } from 'react' +import { Partner, PartnerContact } from '~/types/partners' export default function BecomeAPartner({ supabase }: { supabase: SupabaseClient }) { + const [formSubmitted, setFormSubmitted] = useState(false) + + const handleFormSubmit: React.FormEventHandler = async (e) => { + e.preventDefault() + var formData = new FormData(document.getElementsByTagName('form')[0]) + const { error } = await supabase.from('partner_contacts').insert( + [ + { + type: formData.get('type') as 'expert' | 'technology', + first: formData.get('first') as string, + last: formData.get('last') as string, + company: formData.get('company') as string, + size: Number(formData.get('size')), + title: formData.get('title') as string, + email: formData.get('email') as string, + website: (formData.get('email') as string).split('@')[1], + phone: formData.get('phone') as string, + country: formData.get('country') as string, + details: formData.get('details') as string, + }, + ], + { returning: 'minimal' } + ) + console.log(error) + setFormSubmitted(true) + } + return (
    Become a Partner +
    + +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + +
    + +
    + + {formSubmitted && ( + Thanks, we'll reach out to you shortly 👁⚡️👁 + )}
    ) } diff --git a/www/pages/partners/experts/index.tsx b/www/pages/partners/experts/index.tsx index 5541e22aa8f..975f53b642f 100644 --- a/www/pages/partners/experts/index.tsx +++ b/www/pages/partners/experts/index.tsx @@ -92,10 +92,15 @@ function ExpertPartnersPage(props: Props) { {/* Title */} Find an Expert {/* Search Bar */} -
    - } placeholder="Search all partners" type="text" /> +
    + } + placeholder="Search all partners" + type="text" + className="md:w-1/2" + /> } placeholder="Search all partners" type="text" /> +
    + } + placeholder="Search all partners" + type="text" + className="md:w-1/2" + /> { {blog.title}
    - - {blog.date} - +

    {blog.date}

    - +

    {blog.description}

    -
    +

    {author && (
    @@ -51,10 +49,8 @@ const BlogListItem = ({ blog }: Props) => { )} - {author.author} - - {author.position} - +

    {author.author}

    +

    {author.position}

    diff --git a/www/components/BuiltWithSupabase/index.tsx b/www/components/BuiltWithSupabase/index.tsx index 1683235d713..0e4a5220127 100644 --- a/www/components/BuiltWithSupabase/index.tsx +++ b/www/components/BuiltWithSupabase/index.tsx @@ -15,7 +15,7 @@ const BuiltExamples = () => {
    What can you build with supabase? - +

    There are many example apps and starter projects to get going

    @@ -36,7 +36,7 @@ const BuiltExamples = () => { -
    +

    {Examples.slice(0, 6).map((example, i) => { diff --git a/www/components/Carousels/ImageCarousel.tsx b/www/components/Carousels/ImageCarousel.tsx index 9c6c5649824..3017aaddd0b 100644 --- a/www/components/Carousels/ImageCarousel.tsx +++ b/www/components/Carousels/ImageCarousel.tsx @@ -48,20 +48,20 @@ function ImageCarousel(props: ImageCarouselProps) { const details = (
    - +

    Allow fetch something - - +

    +

    This would only allow the authenticated user access to a folder that is named after their own account UID. This is useful for things like profile images.

    -
    - +

    +

    - +

    ) @@ -171,11 +171,11 @@ function ImageCarousel(props: ImageCarouselProps) {
    {content.title} - +

    {content.text}

    -
    +

    {content.url && ( - +

    diff --git a/www/components/Carousels/SplitCodeBlockCarousel.tsx b/www/components/Carousels/SplitCodeBlockCarousel.tsx index d6df338b85b..9d1c6c09a98 100644 --- a/www/components/Carousels/SplitCodeBlockCarousel.tsx +++ b/www/components/Carousels/SplitCodeBlockCarousel.tsx @@ -44,18 +44,18 @@ function SplitCodeBlockCarousel(props: SplitCodeBlockCarousel) { const details = (
    - +

    Allow fetch something - - +

    +

    This would only allow the authenticated user access to a folder that is named after their own account UID. This is useful for things like profile images.

    -
    - +

    +

    - +

    ) @@ -116,28 +116,26 @@ function SplitCodeBlockCarousel(props: SplitCodeBlockCarousel) { return (
    - +

    {extension.detail_title} - - +

    +

    {extension.detail_text}

    -
    +

    {extension.url && ( - +

    - +

    )}
    - - {extension.badges_label} - +

    {extension.badges_label}

    {extension.badges && extension.badges.map((badge, i) => { return {badge} diff --git a/www/components/CaseStudies/benchmark.tsx b/www/components/CaseStudies/benchmark.tsx index f86c9cd3117..b55848d26fc 100644 --- a/www/components/CaseStudies/benchmark.tsx +++ b/www/components/CaseStudies/benchmark.tsx @@ -21,14 +21,14 @@ const Benchmark = () => { Built for speed and reliability - +

    Supabase outperforms equivalent systems by more than 300%. Sign up for our public benchmark release and we'll send it to your inbox. - +

    diff --git a/www/components/CaseStudies/index.tsx b/www/components/CaseStudies/index.tsx index 078192c5074..e65ac365016 100644 --- a/www/components/CaseStudies/index.tsx +++ b/www/components/CaseStudies/index.tsx @@ -30,12 +30,12 @@ const CaseStudies = () => { >
    - +

    Project example - +

    {caseStudy.title}
    - {caseStudy.description} +

    {caseStudy.description}

    diff --git a/www/components/ExampleCard.tsx b/www/components/ExampleCard.tsx index b937d6c678b..6f59ed94a9c 100644 --- a/www/components/ExampleCard.tsx +++ b/www/components/ExampleCard.tsx @@ -24,7 +24,7 @@ function ExampleCard(props: any) { {props.title} - +

    {props.description}

    Created by: @@ -34,7 +34,7 @@ function ExampleCard(props: any) { /> {props.author}
    -
    +

    @@ -47,7 +47,7 @@ function ExampleCard(props: any) { flex flex-col justify-between rounded rounded-t-none" > - +

    {props.repo_name} @@ -56,7 +56,7 @@ function ExampleCard(props: any) { - +

    {props.vercel_deploy_url && ( diff --git a/www/components/FeatureColumn.tsx b/www/components/FeatureColumn.tsx index 8cb2b5958f7..e80bd3f5558 100644 --- a/www/components/FeatureColumn.tsx +++ b/www/components/FeatureColumn.tsx @@ -3,13 +3,13 @@ import { Typography } from '@supabase/ui' function FeatureColumn({ icon, title, text }: any) { return ( <> - +

    {icon}

    -
    +

    {title} - +

    {text}

    -
    +

    ) } diff --git a/www/components/Features/index.tsx b/www/components/Features/index.tsx index 034a2be6fa0..8b1b36906be 100644 --- a/www/components/Features/index.tsx +++ b/www/components/Features/index.tsx @@ -20,7 +20,7 @@ const Features = () => {
    - {description} +

    {description}

    {label && (
    diff --git a/www/components/Nav/Developers.tsx b/www/components/Nav/Developers.tsx index 89c88745fa3..c5cf42e520f 100644 --- a/www/components/Nav/Developers.tsx +++ b/www/components/Nav/Developers.tsx @@ -34,9 +34,9 @@ const Developers = () => {
    {text} - +

    {description}

    -
    +

    ) @@ -65,7 +65,7 @@ const Developers = () => {
    - Latest announcements +

    Latest announcements

      {AnnouncementsData.map((caseStudy: any, idx: number) => (
    • @@ -84,7 +84,7 @@ const Developers = () => { {caseStudy.title} - {caseStudy.description} +

      {caseStudy.description}

  • diff --git a/www/components/Nav/Product.tsx b/www/components/Nav/Product.tsx index 4c950fea9db..4f2d49139f9 100644 --- a/www/components/Nav/Product.tsx +++ b/www/components/Nav/Product.tsx @@ -22,9 +22,9 @@ const Product = () => {
    - +

    {description}

    -
    +

    {label && (
    {label} @@ -53,7 +53,7 @@ const Product = () => {
    - Latest case studies +

    Latest case studies

      {CaseStudiesData.map((caseStudy: any, idx: number) => { if (idx > 1) { @@ -76,7 +76,7 @@ const Product = () => { {caseStudy.title} - {caseStudy.description} +

      {caseStudy.description}

    diff --git a/www/components/PricingTableRow.tsx b/www/components/PricingTableRow.tsx index 215676e7f41..2ea70f76208 100644 --- a/www/components/PricingTableRow.tsx +++ b/www/components/PricingTableRow.tsx @@ -133,7 +133,7 @@ export const PricingTableRowMobile = (props: any) => { - {feat.title} +

    {feat.title}

    diff --git a/www/components/Quote.tsx b/www/components/Quote.tsx index f056ef9472a..7bb2fcea47d 100644 --- a/www/components/Quote.tsx +++ b/www/components/Quote.tsx @@ -23,7 +23,7 @@ export default function Quote(props: Props) { style={{ margin: 0 }} />
    - {caption} +

    {caption}

    diff --git a/www/components/Sections/APISection.tsx b/www/components/Sections/APISection.tsx index 20e2e376381..a9819775ef4 100644 --- a/www/components/Sections/APISection.tsx +++ b/www/components/Sections/APISection.tsx @@ -36,7 +36,7 @@ function APISection(props: Props) {

    Blazing fast - +

    Use media in your project without needing to reply on external services or learn new frameworks. @@ -33,14 +33,14 @@ const FeatureSection = (props: any) => { Familiar and easy to use permissions mean that your content is secure and accessible only to the right users

    -
    +

    Dependable - +

    Use media in your project without needing to reply on external services or learn new frameworks. @@ -49,7 +49,7 @@ const FeatureSection = (props: any) => { Familiar and easy to use permissions mean that your content is secure and accessible only to the right users

    -
    +

    ) diff --git a/www/components/Sections/GithubExamples.tsx b/www/components/Sections/GithubExamples.tsx index 4abccda13a9..0486dbe6986 100644 --- a/www/components/Sections/GithubExamples.tsx +++ b/www/components/Sections/GithubExamples.tsx @@ -37,11 +37,11 @@ function GithubExamples() { Community driven examples, libraries and guides - +

    Supported by a network of early advocates, contributors, and champions.

    -
    +

    @@ -117,14 +117,14 @@ function GithubExamples() { })}
    - +

    - +

    - +

    - +

    diff --git a/www/components/Sections/ProductHeader.tsx b/www/components/Sections/ProductHeader.tsx index 99f89a1722f..71717626a9a 100644 --- a/www/components/Sections/ProductHeader.tsx +++ b/www/components/Sections/ProductHeader.tsx @@ -31,7 +31,7 @@ const ProductHeader = (props: Types) => ( {props.h1} {props.subheader && ( - +

    {props.subheader.map((subheader, i) => { return (

    @@ -39,7 +39,7 @@ const ProductHeader = (props: Types) => (

    ) })} -
    +

    )}
    @@ -111,14 +111,14 @@ function TwitterSocialProof() { })}
    - +

    - +

    - +

    - +

    diff --git a/www/components/TweetCard.tsx b/www/components/TweetCard.tsx index 46709fac114..083bba4e1cb 100644 --- a/www/components/TweetCard.tsx +++ b/www/components/TweetCard.tsx @@ -23,12 +23,10 @@ function TweetCard(props: TweetCard) {
    - - {props.handle} - - +

    {props.handle}

    +

    "{props.quote}"

    -
    +

    ) } diff --git a/www/components/UI/SectionHeader.tsx b/www/components/UI/SectionHeader.tsx index 40a0d919e90..af3749bf9fa 100644 --- a/www/components/UI/SectionHeader.tsx +++ b/www/components/UI/SectionHeader.tsx @@ -17,9 +17,9 @@ const SectionHeader = (props: any) => {
    {props.paragraph && ( - +

    {props.paragraph}

    -
    +

    )}
    diff --git a/www/data/Community.tsx b/www/data/Community.tsx index 3f00a98ab82..bdaa1b4397a 100644 --- a/www/data/Community.tsx +++ b/www/data/Community.tsx @@ -37,7 +37,7 @@ const data: CommunityItem[] = [ invertImgDarkMode: true, detail: () => (
    - Some growth chart? +

    Some growth chart?

    ), }, @@ -48,7 +48,7 @@ const data: CommunityItem[] = [ img: 'twitter.png', detail: () => (
    - Some twitter callouts +

    Some twitter callouts

    ), }, @@ -59,7 +59,7 @@ const data: CommunityItem[] = [ img: 'discord.png', detail: () => (
    - Something great +

    Something great

    ), }, diff --git a/www/pages/404.tsx b/www/pages/404.tsx index 177292b4662..49102ab528a 100644 --- a/www/pages/404.tsx +++ b/www/pages/404.tsx @@ -58,9 +58,7 @@ const Error404 = () => { >
    Looking for something? 🔍 - - We couldn't find the page that you're looking for! - +

    We couldn't find the page that you're looking for!

    diff --git a/www/pages/auth/Auth.tsx b/www/pages/auth/Auth.tsx index 346cbe21c97..b6a28da5248 100644 --- a/www/pages/auth/Auth.tsx +++ b/www/pages/auth/Auth.tsx @@ -129,40 +129,40 @@ function AuthPage() {

    All the social providers - +

    Enable social logins with the click of a button. Google, Facebook, GitHub, Azure, Gitlab, Twitter, Discord, and Bitbucket.

    -
    +

    - +

    -
    +

    Fully integrated - +

    Incredibly simple Auth, without a single external authentication service. Built-in Authentication, Authorization, and User Management.

    -
    +

    - +

    -
    +

    Own your data - +

    User data stored in your Supabase database so you never have to worry about 3rd party privacy issues. Host your data in 8 different locations.

    -
    +

    @@ -174,7 +174,7 @@ function AuthPage() { content={ApiExamples} size="large" text={[ - +

    APIs that you can understand. With powerful libraries that work on client and server-side applications. @@ -184,7 +184,7 @@ function AuthPage() { With powerful client libraries that work on both client and server-side applications.

    */} -
    , +

    , ]} footer={[
    @@ -228,14 +228,14 @@ function AuthPage() {
    User permissions without the middleware - +

    Supabase Auth works without any additional servers. Build Authorization rules with Postgres' Row Level Security, controlling who can create, edit and delete specific rows in your database.

    Policies can be written in SQL or using the dashboard online.

    -
    +

    } /> ))}
    - - With developer signups from the world's leading brands. - +

    With developer signups from the world's leading brands.

    @@ -246,12 +244,12 @@ const Investors = () => { title="Our investors" paragraph={ <> - +

    We've raised over $36 million in funding, backed by some of the world's leading investors.

    -
    +

    } /> @@ -298,9 +296,7 @@ const Investors = () => { {x.name} - - {x.title} - +

    {x.title}

    @@ -322,9 +318,9 @@ const Press = () => {
    - +

    {x.type.toUpperCase()} - +

    {x.title}
    @@ -338,9 +334,9 @@ const Press = () => {
    - +

    {x.type.toUpperCase()} - +

    {x.title}
    diff --git a/www/pages/database/Database.tsx b/www/pages/database/Database.tsx index 6bf20169719..9984ba62da7 100644 --- a/www/pages/database/Database.tsx +++ b/www/pages/database/Database.tsx @@ -110,7 +110,7 @@ function Database() {
    - +

    @@ -121,19 +121,19 @@ function Database() { />

    -
    +

    Just Postgres - +

    Every Supabase project is a dedicated Postgres database.

    100% portable. Bring your existing Postgres database, or migrate away at any time.

    -
    +

    - +

    @@ -141,9 +141,9 @@ function Database() {

    -
    +

    Built-in Auth - +

    Leveraging PostgreSQL's proven Row Level Security.

    @@ -151,10 +151,10 @@ function Database() { Integrated with JWT authentication which controls exactly what your users can access.

    -
    +

    - +

    @@ -162,12 +162,12 @@ function Database() {

    -
    +

    Realtime enabled - +

    Data-change listeners over websockets.

    Subscribe and react to database changes, milliseconds after they happen.

    -
    +

    @@ -177,11 +177,11 @@ function Database() {
    Easy to use dashboard - +

    The simplicity of a Table Editor, or the power of a SQL editor. Your choice.

    -
    +

    @@ -269,9 +269,9 @@ function Database() {
    - +

    Libraries coming soon:

    {' '} -
    +

    Python @@ -321,12 +321,12 @@ function Database() {
    Extend your database - +

    Supabase works natively with Postgres extensions.

    Choose from a huge collection of Postgres extensions, enabled with a single click.

    -
    +

    Predictable pricing, no surprises - +

    Start with a hobby project, collaborate with a team, and scale to millions of users.

    -
    +

    {/*
    @@ -56,11 +56,11 @@ export default function IndexPage() { Limited time offer - +

    Lock into permanent beta pricing for 2 years if you upgrade today.

    -
    +

    */} @@ -72,9 +72,9 @@ export default function IndexPage() { />
    Free tshirt - +

    We are giving away free tshirts to anyone who signs up for the Beta Pro plan - +

    */} @@ -92,7 +92,7 @@ export default function IndexPage() {

    Free

    $0 - /project /month +

    /project /month

    Perfect for hobby projects and experiments. @@ -129,7 +129,7 @@ export default function IndexPage() {

    Pro

    $25 - /project /month +

    /project /month

    Everything you need to scale your project into production. @@ -168,7 +168,7 @@ export default function IndexPage() {

    $25 - /project /month plus usage costs +

    /project /month plus usage costs

    Designated support team, account manager and technical specialist. @@ -268,12 +268,10 @@ export default function IndexPage() { $0 - /project /month +

    /project /month

    - - Perfect for hobby projects and experiments. - +

    Perfect for hobby projects and experiments.

    @@ -293,12 +291,10 @@ export default function IndexPage() { $25 - /project /month +

    /project /month

    - - Everything you need to scale your project into production. - +

    Everything you need to scale your project into production.

    @@ -318,12 +314,10 @@ export default function IndexPage() { $25 - /project /month plus usage costs +

    /project /month plus usage costs

    - - Designated support team, account manager and technical specialist. - +

    Designated support team, account manager and technical specialist.

    diff --git a/www/pages/storage/Storage.tsx b/www/pages/storage/Storage.tsx index 7902b3f3beb..77cb573338b 100644 --- a/www/pages/storage/Storage.tsx +++ b/www/pages/storage/Storage.tsx @@ -93,7 +93,7 @@ function StoragePage() {
    - +

    @@ -103,9 +103,9 @@ function StoragePage() {

    -
    +

    Interoperable - +

    Integrates well with the rest of Supabase ecosystem, including Auth and Postgres.

    @@ -113,10 +113,10 @@ function StoragePage() { Familiar and easy to use permissions mean that your content is secure and accessible only to the right users

    */} -
    +

    - +

    -
    +

    Lightning fast - +

    Thin API server layer that leverages Postgres' permissions and performance.

    @@ -136,10 +136,10 @@ function StoragePage() { 1.3x faster than XXX, your content can be delivered anywhere in the world at the speed you expect.

    */} -
    +

    - +

    -
    +

    Dependable - +

    Enterprise-level scalability and durability.

    {/*

    A durability rating of 99.999999999%.

    */} -
    +

    @@ -162,7 +162,7 @@ function StoragePage() {
    Sleek dashboard for managing your media - +

    A complete Object Explorer so that any of your team can use.

    @@ -170,7 +170,7 @@ function StoragePage() { Drag and drop uploading, moving objects, and multiple object selection. As easy as working on your desktop.

    -
    +

    with Supabase Auth - +

    Using Postgres Row Level Security to create Object access rules.

    @@ -267,7 +267,7 @@ function StoragePage() { combination of SQL, Postgres functions, and even your own metadata to write policies.

    -
    +

    {
    Get Support - +

    Need a bit of help? We're here for you. Check out our current issues, GitHub discussions, or get email support.

    -
    +

    @@ -83,7 +83,7 @@ const Index = ({}: Props) => { GitHub Issues - +

    Have a general issue or bug that you've found? We'd love to hear about it in our GitHub issues. This can be feature requests too! @@ -91,7 +91,7 @@ const Index = ({}: Props) => {

    Use this for: Bugs and other issues

    -
    +

    @@ -132,7 +132,7 @@ const Index = ({}: Props) => { GitHub Discussions - +

    For help and questions about best practices, join our GitHub discussions. Browse and ask questions. @@ -140,7 +140,7 @@ const Index = ({}: Props) => {

    Use this for: General questions

    -
    +

    @@ -182,7 +182,7 @@ const Index = ({}: Props) => { Email Support - +

    We offer email based support. If you need SLAs, guaranteed response times, or have an issue, please contact us here. @@ -191,7 +191,7 @@ const Index = ({}: Props) => { Use this for: Issues or questions specific to you

    -
    +

    From 39e40ff8ad092f4edeb6074f8ff9cd1447d847a0 Mon Sep 17 00:00:00 2001 From: Jonathan Summers-Muir Date: Sun, 6 Mar 2022 22:27:28 +0000 Subject: [PATCH 09/67] more updates --- www/components/BuiltWithSupabase/index.tsx | 39 +++++------- www/components/ExampleCard.tsx | 61 ++++++++++--------- www/components/Features/index.tsx | 6 +- www/components/Nav/index.tsx | 2 +- .../Sections/TwitterSocialProof.tsx | 44 ++++++++----- www/components/TextLink.tsx | 12 ++-- www/components/TweetCard.tsx | 37 +++++++---- www/components/TwitterSocialSection.tsx | 23 +++++++ www/default-colors.js | 48 +++++++-------- www/pages/index.tsx | 17 +----- www/styles/index.css | 20 +++++- www/ui.config.js | 37 ++++------- 12 files changed, 188 insertions(+), 158 deletions(-) create mode 100644 www/components/TwitterSocialSection.tsx diff --git a/www/components/BuiltWithSupabase/index.tsx b/www/components/BuiltWithSupabase/index.tsx index 0e4a5220127..b20b0a49011 100644 --- a/www/components/BuiltWithSupabase/index.tsx +++ b/www/components/BuiltWithSupabase/index.tsx @@ -14,29 +14,22 @@ const BuiltExamples = () => { return (
    - What can you build with supabase? -

    -

    - There are many example apps and starter projects to get going -

    - - -
    - - - - - - - - - -

    +

    What can you build with supabase?

    +

    There are many example apps and starter projects to get going

    +
    + + + + + + +
    {Examples.slice(0, 6).map((example, i) => { diff --git a/www/components/ExampleCard.tsx b/www/components/ExampleCard.tsx index 6f59ed94a9c..e0a46f04656 100644 --- a/www/components/ExampleCard.tsx +++ b/www/components/ExampleCard.tsx @@ -13,27 +13,26 @@ function ExampleCard(props: any) { return ( <>
    - - {props.title} - -

    -

    {props.description}

    -
    - Created by: - - {props.author} -
    +

    {props.title}

    + +

    {props.description}

    +

    + Created by: + + {props.author}

    @@ -41,23 +40,27 @@ function ExampleCard(props: any) { diff --git a/www/components/Features/index.tsx b/www/components/Features/index.tsx index 8b1b36906be..f662b7fa13a 100644 --- a/www/components/Features/index.tsx +++ b/www/components/Features/index.tsx @@ -13,11 +13,7 @@ const Features = () => {
    -
    - - {name} - -
    +
    {name}

    {description}

    diff --git a/www/components/Nav/index.tsx b/www/components/Nav/index.tsx index 1b06a48db0d..1ff76364d83 100644 --- a/www/components/Nav/index.tsx +++ b/www/components/Nav/index.tsx @@ -182,7 +182,7 @@ const Nav = () => { <>
    -
    +
    - 404 - +
    { }`} >
    - Looking for something? 🔍 +

    Looking for something? 🔍

    We couldn't find the page that you're looking for!

    diff --git a/www/pages/auth/Auth.tsx b/www/pages/auth/Auth.tsx index b6a28da5248..3c35047dc0b 100644 --- a/www/pages/auth/Auth.tsx +++ b/www/pages/auth/Auth.tsx @@ -128,7 +128,7 @@ function AuthPage() { })}

    - All the social providers +

    All the social providers

    Enable social logins with the click of a button. Google, Facebook, GitHub, Azure, @@ -142,7 +142,7 @@ function AuthPage() {

    - Fully integrated +

    Fully integrated

    Incredibly simple Auth, without a single external authentication service. Built-in @@ -156,7 +156,7 @@ function AuthPage() {

    - Own your data +

    Own your data

    User data stored in your Supabase database so you never have to worry about 3rd @@ -227,7 +227,7 @@ function AuthPage() {

    - User permissions without the middleware +

    User permissions without the middleware

    Supabase Auth works without any additional servers. Build Authorization rules with @@ -269,9 +269,7 @@ function AuthPage() { - - React Auth - +

    React Auth

    Pre-built auth widgets to get started in minutes. diff --git a/www/pages/blog.tsx b/www/pages/blog.tsx index db5ee6ce7c2..a623a9d04e4 100644 --- a/www/pages/blog.tsx +++ b/www/pages/blog.tsx @@ -9,7 +9,7 @@ import { getSortedPosts, getAllCategories } from '~/lib/posts' import authors from 'lib/authors.json' import DefaultLayout from '~/components/Layouts/Default' -import { Typography, Tabs } from '@supabase/ui' +import { Tabs } from '@supabase/ui' import PostTypes from '~/types/post' import BlogListItem from '~/components/Blog/BlogListItem' @@ -149,7 +149,7 @@ function FeaturedThumb(blog: PostTypes) {

    - {blog.title} +

    {blog.title}

    {blog.description}

    diff --git a/www/pages/blog/[year]/[month]/[day]/[slug].tsx b/www/pages/blog/[year]/[month]/[day]/[slug].tsx index 54c5a9b747e..e82cc9a2aa0 100644 --- a/www/pages/blog/[year]/[month]/[day]/[slug].tsx +++ b/www/pages/blog/[year]/[month]/[day]/[slug].tsx @@ -1,4 +1,4 @@ -import { Badge, Card, Divider, IconChevronLeft, IconFile, Space, Typography } from '@supabase/ui' +import { Badge, Card, Divider, IconChevronLeft, IconFile, Space } from '@supabase/ui' import matter from 'gray-matter' import authors from 'lib/authors.json' import hydrate from 'next-mdx-remote/hydrate' @@ -107,7 +107,7 @@ function BlogPostPage(props: any) {

    {label}

    - {post.title} +

    {post.title}

    {post.date}

    @@ -137,11 +137,11 @@ function BlogPostPage(props: any) {

    Table of contents

    - +
    {props.blog.toc.content}
    - +
    ) @@ -202,8 +202,8 @@ function BlogPostPage(props: any) { {/* Title and description */}
    -

    Blog post

    - {props.blog.title} +

    Blog post

    +

    {props.blog.title}

    {props.blog.date}

    •

    @@ -241,8 +241,8 @@ function BlogPostPage(props: any) { style={{ maxHeight: '520px' }} /> )} -
    - {content} +
    + {content}
    Share with your friends
    @@ -384,9 +384,9 @@ function BlogPostPage(props: any) {
    {toc}
    - +
    Related articles - +
    {props.relatedPosts.map((post: any) => ( diff --git a/www/pages/blog/tags/[tag].tsx b/www/pages/blog/tags/[tag].tsx index 26b8852da86..0310c49fc5a 100644 --- a/www/pages/blog/tags/[tag].tsx +++ b/www/pages/blog/tags/[tag].tsx @@ -5,8 +5,6 @@ import Link from 'next/link' import DefaultLayout from '~/components/Layouts/Default' import BlogListItem from '~/components/Blog/BlogListItem' import PostTypes from '~/types/post' -import BlogHeader from '~/components/Blog/BlogHeader' -import { Typography } from '@supabase/ui' export async function getStaticProps({ params }: any) { const posts = getSortedPosts('_blog', 0, [params.tag]) diff --git a/www/pages/brand-assets.tsx b/www/pages/brand-assets.tsx index 30b983bcfa4..5662891f5d0 100644 --- a/www/pages/brand-assets.tsx +++ b/www/pages/brand-assets.tsx @@ -1,17 +1,14 @@ import Container from 'components/Container' -import { createClient } from '@supabase/supabase-js' + import Layout from '~/components/Layouts/Default' import CTABanner from 'components/CTABanner/index' -import { Button, Typography, IconDownload } from '@supabase/ui' +import { Button, IconDownload } from '@supabase/ui' -import Link from 'next/link' import { useRouter } from 'next/router' import SectionContainer from '~/components/Layouts/SectionContainer' import { NextSeo } from 'next-seo' -const { Title, Text } = Typography - const Index = () => { // base path for images const router = useRouter() @@ -39,14 +36,12 @@ const Index = () => {
    -
    - Brand assets - Download official Supabase logos - - All Supabase trademarks, logos, or other brand elements can never be modified or - used for any other purpose other than to represent Supabase Inc. - -
    +

    Brand assets

    +

    Download official Supabase logos

    +

    + All Supabase trademarks, logos, or other brand elements can never be modified or + used for any other purpose other than to represent Supabase Inc. +

    @@ -61,7 +56,7 @@ const Index = () => {
    - Supabase logos +

    Supabase logos

    Download Supabase official logos, including as SVG's, in both light and dark diff --git a/www/pages/company.tsx b/www/pages/company.tsx index aad5486766b..7779a237494 100644 --- a/www/pages/company.tsx +++ b/www/pages/company.tsx @@ -24,7 +24,6 @@ import { IconLinkedin, IconTwitter, Space, - Typography, } from '@supabase/ui' import { NextSeo } from 'next-seo' @@ -76,9 +75,7 @@ const Header = () => { mx-auto px-6 lg:px-16 xl:px-20 relative py-16 sm:py-18 md:py-24 lg:py-24 text-center" > - - Join one of the world's fastest growing open source communities. - +

    Join one of the world's fastest growing open source communities.

    ) @@ -133,9 +130,9 @@ const Team = () => {
    - +
    {x.name} - +

    {x.department}

    @@ -216,9 +213,7 @@ const Community = () => { />
    - - {x.stat} - +

    {x.stat}

    {x.statLabel}

    @@ -283,7 +278,7 @@ const Investors = () => {
    ))}
    - Individual investors +

    Individual investors

    {InvestorData.filter((x) => x.lead === false) .sort((a, b) => a.name.localeCompare(b.name)) @@ -293,9 +288,7 @@ const Investors = () => {
    - - {x.name} - +
    {x.name}

    {x.title}

    @@ -318,10 +311,8 @@ const Press = () => {
    -

    - {x.type.toUpperCase()} -

    - {x.title} +

    {x.type.toUpperCase()}

    +

    {x.title}

    @@ -334,10 +325,8 @@ const Press = () => {
    -

    - {x.type.toUpperCase()} -

    - {x.title} +

    {x.type.toUpperCase()}

    +

    {x.title}

    diff --git a/www/pages/database/Database.tsx b/www/pages/database/Database.tsx index 9984ba62da7..df2b5bb82d9 100644 --- a/www/pages/database/Database.tsx +++ b/www/pages/database/Database.tsx @@ -1,13 +1,4 @@ -import { - Badge, - Button, - IconArrowUpRight, - IconShuffle, - IconX, - Space, - Tabs, - Typography, -} from '@supabase/ui' +import { Badge, Button, IconArrowUpRight, IconShuffle, IconX, Space, Tabs } from '@supabase/ui' // data import ApiExamplesData from 'data/products/database/api-examples' import ExtensionsExamplesData from 'data/products/database/extensions-examples' @@ -122,7 +113,7 @@ function Database() {

    - Just Postgres +

    Just Postgres

    Every Supabase project is a dedicated Postgres database. @@ -142,7 +133,7 @@ function Database() {

    - Built-in Auth +

    Built-in Auth

    Leveraging PostgreSQL's proven Row Level Security. @@ -163,7 +154,7 @@ function Database() {

    - Realtime enabled +

    Realtime enabled

    Data-change listeners over websockets.

    Subscribe and react to database changes, milliseconds after they happen.

    @@ -176,7 +167,7 @@ function Database() {
    - Easy to use dashboard +

    Easy to use dashboard

    The simplicity of a Table Editor, or the power of a SQL editor. Your choice. @@ -320,7 +311,7 @@ function Database() {

    - Extend your database +

    Extend your database

    Supabase works natively with Postgres extensions.

    diff --git a/www/pages/pricing/index.tsx b/www/pages/pricing/index.tsx index ab81a198615..23252a34d5f 100644 --- a/www/pages/pricing/index.tsx +++ b/www/pages/pricing/index.tsx @@ -4,7 +4,7 @@ import Link from 'next/link' import DefaultLayout from '~/components/Layouts/Default' import { PricingTableRowDesktop, PricingTableRowMobile } from '~/components/PricingTableRow' -import { Accordion, Badge, Button, Divider, Space, Typography } from '@supabase/ui' +import { Accordion, Button } from '@supabase/ui' import pricing from '~/data/Pricing.json' import pricingFaq from '~/data/PricingFAQ.json' @@ -40,7 +40,7 @@ export default function IndexPage() {

    - Predictable pricing, no surprises +

    Predictable pricing, no surprises

    Start with a hobby project, collaborate with a team, and scale to millions of users. @@ -51,9 +51,9 @@ export default function IndexPage() {

    - +

    Special Beta Pricing - +

    Limited time offer

    @@ -71,7 +71,7 @@ export default function IndexPage() { className="col-span-6 h-30 object-cover" />

    - Free tshirt +

    Free tshirt

    We are giving away free tshirts to anyone who signs up for the Beta Pro plan

    @@ -223,7 +223,7 @@ export default function IndexPage() { className=" bg-white dark:bg-gray-800 w-1/4 pb-4 px-6 text-left font-medium" scope="col" > - Free +

    Free

    - Pro +

    Pro

    - Pay as you go +

    Pay as you go

    - Frequently asked questions - +

    Frequently asked questions

    +

    Can't find the answer to your question, ask someone in the community either on our Discord or GitHub. - +

    diff --git a/www/pages/storage/Storage.tsx b/www/pages/storage/Storage.tsx index 77cb573338b..dffbc774714 100644 --- a/www/pages/storage/Storage.tsx +++ b/www/pages/storage/Storage.tsx @@ -1,15 +1,4 @@ -import { - Badge, - Button, - IconArrowUpRight, - IconBarChart, - IconCheckSquare, - IconShuffle, - IconWifi, - IconX, - Space, - Typography, -} from '@supabase/ui' +import { Badge, Button, IconArrowUpRight, IconShuffle, IconWifi, IconX, Space } from '@supabase/ui' import ApiExamples from 'data/products/storage/api-examples' import DashboardViewData from 'data/products/storage/dashboard-carousel.json' import StoragePermissionsData from 'data/products/storage/permissions-examples' @@ -104,7 +93,7 @@ function StoragePage() {

    - Interoperable +

    Interoperable

    Integrates well with the rest of Supabase ecosystem, including Auth and Postgres. @@ -127,7 +116,7 @@ function StoragePage() {

    - Lightning fast +

    Lightning fast

    Thin API server layer that leverages Postgres' permissions and performance. @@ -150,7 +139,7 @@ function StoragePage() {

    - Dependable +

    Dependable

    Enterprise-level scalability and durability.

    {/*

    A durability rating of 99.999999999%.

    */} @@ -161,7 +150,7 @@ function StoragePage() {
    - Sleek dashboard for managing your media +

    Sleek dashboard for managing your media

    A complete Object Explorer so that any of your team can use. @@ -176,9 +165,7 @@ function StoragePage() { // @ts-ignore content={DashboardViewData} footer={[ - - Check out our example app - , +

    Check out our example app

    , // !! Update this example !!
    - +

    Integrates natively
    with Supabase Auth - +

    Using Postgres Row Level Security to create Object access rules. diff --git a/www/pages/support.tsx b/www/pages/support.tsx index a022387b458..03e04d8f545 100644 --- a/www/pages/support.tsx +++ b/www/pages/support.tsx @@ -11,7 +11,6 @@ import { IconX, Space, Tabs, - Typography, IconGitHub, Divider, IconMail, @@ -61,7 +60,7 @@ const Index = ({}: Props) => {

    - Get Support +

    Get Support

    Need a bit of help? We're here for you. Check out our current issues, GitHub @@ -80,9 +79,7 @@ const Index = ({}: Props) => { " >

    - - GitHub Issues - +
    GitHub Issues

    Have a general issue or bug that you've found? We'd love to hear about it in @@ -129,9 +126,7 @@ const Index = ({}: Props) => { " >

    - - GitHub Discussions - +
    GitHub Discussions

    For help and questions about best practices, join our GitHub discussions. @@ -179,9 +174,7 @@ const Index = ({}: Props) => { " >

    - - Email Support - +
    Email Support

    We offer email based support. If you need SLAs, guaranteed response times, From 7cbb6279d823a253d64a4876f53bfa9ce2dd5d27 Mon Sep 17 00:00:00 2001 From: Isaiah Hamilton Date: Sun, 6 Mar 2022 20:34:10 -0500 Subject: [PATCH 11/67] chore: update selection color --- www/styles/index.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www/styles/index.css b/www/styles/index.css index ae8a6ed5723..f2f48f70375 100644 --- a/www/styles/index.css +++ b/www/styles/index.css @@ -109,7 +109,7 @@ small { } ::selection { - @apply bg-green-300; + @apply bg-brand-900; color: #333 !important; } From df417f9a3c12577160790acb56730f4ce592d9e6 Mon Sep 17 00:00:00 2001 From: Isaiah Hamilton Date: Sun, 6 Mar 2022 20:51:30 -0500 Subject: [PATCH 12/67] chore: update text color --- www/components/Footer/index.tsx | 12 ++++++------ www/components/Nav/index.tsx | 2 +- www/components/UI/SectionHeader.tsx | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/www/components/Footer/index.tsx b/www/components/Footer/index.tsx index 16b036a6607..b328ed13e9d 100644 --- a/www/components/Footer/index.tsx +++ b/www/components/Footer/index.tsx @@ -11,7 +11,7 @@ const Footer = () => { return (

    -

    +

    © Supabase Inc

    diff --git a/www/components/Nav/index.tsx b/www/components/Nav/index.tsx index 1ff76364d83..9d061965438 100644 --- a/www/components/Nav/index.tsx +++ b/www/components/Nav/index.tsx @@ -183,7 +183,7 @@ const Nav = () => {
    -