From 0bd175264b000895cccd75f4499bdf55daad4882 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thor=20=E9=9B=B7=E7=A5=9E=20Schaeff?=
<5748289+thorwebdev@users.noreply.github.com>
Date: Tue, 19 Jan 2021 21:10:56 +0800
Subject: [PATCH] Update Supabase example. (#21200)
---
.../.env.local.example | 3 +-
.../with-supabase-auth-realtime-db/README.md | 144 ++------------
.../components/Layout.js | 80 --------
.../components/Message.js | 10 -
.../components/MessageInput.js | 28 ---
.../docs/quickstart.png | Bin 104918 -> 0 bytes
.../docs/slack-clone-demo.gif | Bin 1607450 -> 0 bytes
.../jsconfig.json | 8 -
.../lib/Store.js | 169 ----------------
.../lib/UserContext.js | 5 -
.../package.json | 18 +-
.../pages/_app.js | 80 ++------
.../pages/api/auth.js | 8 +
.../pages/api/getUser.js | 13 ++
.../pages/channels/[id].js | 53 -----
.../pages/index.js | 182 +++++++++++-------
.../pages/profile.js | 41 ++++
.../postcss.config.js | 6 -
.../with-supabase-auth-realtime-db/style.css | 4 +
.../styles/style.scss | 28 ---
.../tailwind.config.js | 11 --
.../utils/initSupabase.js | 6 +
22 files changed, 213 insertions(+), 684 deletions(-)
delete mode 100644 examples/with-supabase-auth-realtime-db/components/Layout.js
delete mode 100644 examples/with-supabase-auth-realtime-db/components/Message.js
delete mode 100644 examples/with-supabase-auth-realtime-db/components/MessageInput.js
delete mode 100644 examples/with-supabase-auth-realtime-db/docs/quickstart.png
delete mode 100644 examples/with-supabase-auth-realtime-db/docs/slack-clone-demo.gif
delete mode 100644 examples/with-supabase-auth-realtime-db/jsconfig.json
delete mode 100644 examples/with-supabase-auth-realtime-db/lib/Store.js
delete mode 100644 examples/with-supabase-auth-realtime-db/lib/UserContext.js
create mode 100644 examples/with-supabase-auth-realtime-db/pages/api/auth.js
create mode 100644 examples/with-supabase-auth-realtime-db/pages/api/getUser.js
delete mode 100644 examples/with-supabase-auth-realtime-db/pages/channels/[id].js
create mode 100644 examples/with-supabase-auth-realtime-db/pages/profile.js
delete mode 100644 examples/with-supabase-auth-realtime-db/postcss.config.js
create mode 100644 examples/with-supabase-auth-realtime-db/style.css
delete mode 100644 examples/with-supabase-auth-realtime-db/styles/style.scss
delete mode 100644 examples/with-supabase-auth-realtime-db/tailwind.config.js
create mode 100644 examples/with-supabase-auth-realtime-db/utils/initSupabase.js
diff --git a/examples/with-supabase-auth-realtime-db/.env.local.example b/examples/with-supabase-auth-realtime-db/.env.local.example
index b6fedec92e30868..477da3d401d67ce 100644
--- a/examples/with-supabase-auth-realtime-db/.env.local.example
+++ b/examples/with-supabase-auth-realtime-db/.env.local.example
@@ -1,2 +1,3 @@
+# Update these with your Supabase details from your project settings > API
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
-NEXT_PUBLIC_SUPABASE_KEY=your-anon-key
\ No newline at end of file
+NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key
\ No newline at end of file
diff --git a/examples/with-supabase-auth-realtime-db/README.md b/examples/with-supabase-auth-realtime-db/README.md
index 537029ce5f8d538..0f64a1dc7140f11 100644
--- a/examples/with-supabase-auth-realtime-db/README.md
+++ b/examples/with-supabase-auth-realtime-db/README.md
@@ -1,139 +1,21 @@
-# Realtime chat example using Supabase
+# Example: [Supabase authentication](https://supabase.io/docs/guides/auth) client- and server-side (API routes), and SSR with auth cookie.
-This is a full-stack Slack clone example using:
+This example shows how to use Supabase auth on the client and server in both [API routes](https://nextjs.org/docs/api-routes/introduction) and when using [server side rendering (SSR)](https://nextjs.org/docs/basic-features/pages#server-side-rendering).
-- Frontend:
- - Next.js.
- - [Supabase](https://supabase.io/docs/library/getting-started) for user management and realtime data syncing.
-- Backend:
- - [app.supabase.io](https://app.supabase.io/): hosted Postgres database with restful API for usage with Supabase.js.
+## Deploy with Vercel
-![Demo animation gif](./docs/slack-clone-demo.gif)
+The Vercel deployment will guide you through creating a Supabase account and project. After installation of the Supabase integration, all relevant environment variables will be set up so that the project is usable immediately after deployment 🚀
-This example is a clone of the [Slack Clone example](https://github.com/supabase/supabase/tree/master/examples/nextjs-slack-clone) in the supabase repo, feel free to check it out!
+[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/git/external?repository-url=https%3A%2F%2Fgithub.com%2Fsupabase%2Fsupabase%2Ftree%2Fmaster%2Fexamples%2Fnextjs-with-supabase-auth&project-name=nextjs-with-supabase-auth&repository-name=nextjs-with-supabase-auth&integration-ids=oac_jUduyjQgOyzev1fjrW83NYOv)
-## Deploy your own
+## Feedback and issues
-Once you have access to [the environment variables you'll need](#step-3-set-up-environment-variables), deploy the example using [Vercel](https://vercel.com?utm_source=github&utm_medium=readme&utm_campaign=next-example):
+Please file feedback and issues over on the [Supabase GitHub org](https://github.com/supabase/supabase/issues/new/choose).
-[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/git/external?repository-url=https://github.com/vercel/next.js/tree/canary/examples/with-supabase-auth-realtime-db&project-name=with-supabase-auth-realtime-db&repository-name=with-supabase-auth-realtime-db&env=NEXT_PUBLIC_SUPABASE_URL,NEXT_PUBLIC_SUPABASE_KEY&envDescription=Required%20to%20connect%20the%20app%to%Supabase&envLink=https://github.com/vercel/next.js/tree/canary/examples/with-supabase-auth-realtime-db%23step-3-set-up-environment-variables&project-name=supabase-slack-clone)
+## More Supabase examples
-## How to use
-
-Execute [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app) with [npm](https://docs.npmjs.com/cli/init) or [Yarn](https://yarnpkg.com/lang/en/docs/cli/create/) to bootstrap the example:
-
-```bash
-npx create-next-app --example with-supabase-auth-realtime-db realtime-chat-app
-# or
-yarn create next-app --example with-supabase-auth-realtime-db realtime-chat-app
-```
-
-## Configuration
-
-### Step 1. Create a new Supabase project
-
-Sign up to Supabase - [https://app.supabase.io](https://app.supabase.io) and create a new project. Wait for your database to start.
-
-### Step 2. Run the "Slack Clone" Quickstart
-
-Once your database has started, run the "Slack Clone" quickstart.
-
-![Slack Clone Quick Start](./docs/quickstart.png)
-
-### Step 3. Set up environment variables
-
-In your Supabase project, go to Project Settings (the cog icon), open the API tab, and find your **API URL** and **anon** key, you'll need these in the next step.
-
-![image](https://user-images.githubusercontent.com/10214025/88916245-528c2680-d298-11ea-8a71-708f93e1ce4f.png)
-
-Next, copy the `.env.local.example` file in this directory to `.env.local` (which will be ignored by Git):
-
-```bash
-cp .env.local.example .env.local
-```
-
-Then set each variable on `.env.local`:
-
-- `NEXT_PUBLIC_SUPABASE_URL` should be the **API URL**
-- `NEXT_PUBLIC_SUPABASE_KEY` should be the **anon** key
-
-The **anon** key is your client-side API key. It allows "anonymous access" to your database, until the user has logged in. Once they have logged in, the keys will switch to the user's own login token. This enables row level security for your data. Read more about this [below](#postgres-row-level-security).
-
-> **_NOTE_**: The `service_role` key has full access to your data, bypassing any security policies. These keys have to be kept secret and are meant to be used in server environments and never on a client or browser.
-
-### Step 4. Run Next.js in development mode
-
-```bash
-npm install
-npm run dev
-
-# or
-
-yarn install
-yarn dev
-```
-
-Visit [http://localhost:3000](http://localhost:3000) and start chatting! Open a channel across two browser tabs to see everything getting updated in realtime 🥳. If it doesn't work, post on [GitHub discussions](https://github.com/vercel/next.js/discussions).
-
-### Step 5. Deploy on Vercel
-
-You can deploy this app to the cloud with [Vercel](https://vercel.com?utm_source=github&utm_medium=readme&utm_campaign=next-example) ([Documentation](https://nextjs.org/docs/deployment)).
-
-#### Deploy Your Local Project
-
-To deploy your local project to Vercel, push it to GitHub/GitLab/Bitbucket and [import to Vercel](https://vercel.com/new?utm_source=github&utm_medium=readme&utm_campaign=next-example).
-
-**Important**: When you import your project on Vercel, make sure to click on **Environment Variables** and set them to match your `.env.local` file.
-
-#### Deploy from Our Template
-
-Alternatively, you can deploy using our template by clicking on the Deploy button below.
-
-[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/git/external?repository-url=https://github.com/vercel/next.js/tree/canary/examples/with-supabase-auth-realtime-db&project-name=with-supabase-auth-realtime-db&repository-name=with-supabase-auth-realtime-db&env=NEXT_PUBLIC_SUPABASE_URL,NEXT_PUBLIC_SUPABASE_KEY&envDescription=Required%20to%20connect%20the%20app%to%Supabase&envLink=https://github.com/vercel/next.js/tree/canary/examples/with-supabase-auth-realtime-db%23step-3-set-up-environment-variables&project-name=supabase-slack-clone)
-
-## Supabase details
-
-### Postgres Row level security
-
-This project uses very high-level Authorization using Postgres' Role Level Security.
-When you start a Postgres database on Supabase, we populate it with an `auth` schema, and some helper functions.
-When a user logs in, they are issued a JWT with the role `authenticated` and thier UUID.
-We can use these details to provide fine-grained control over what each user can and cannot do.
-
-This is a trimmed-down schema, with the policies:
-
-```sql
--- USER PROFILES
-CREATE TYPE public.user_status AS ENUM ('ONLINE', 'OFFLINE');
-CREATE TABLE public.users (
- id uuid NOT NULL PRIMARY KEY, -- UUID from auth.users (Supabase)
- username text,
- status user_status DEFAULT 'OFFLINE'::public.user_status
-);
-ALTER TABLE public.users ENABLE ROW LEVEL SECURITY;
-CREATE POLICY "Allow logged-in read access" on public.users FOR SELECT USING ( auth.role() = 'authenticated' );
-CREATE POLICY "Allow individual insert access" on public.users FOR INSERT WITH CHECK ( auth.uid() = id );
-CREATE POLICY "Allow individual update access" on public.users FOR UPDATE USING ( auth.uid() = id );
-
--- CHANNELS
-CREATE TABLE public.channels (
- id bigint GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
- inserted_at timestamp with time zone DEFAULT timezone('utc'::text, now()) NOT NULL,
- slug text NOT NULL UNIQUE
-);
-ALTER TABLE public.channels ENABLE ROW LEVEL SECURITY;
-CREATE POLICY "Allow logged-in full access" on public.channels FOR ALL USING ( auth.role() = 'authenticated' );
-
--- MESSAGES
-CREATE TABLE public.messages (
- id bigint GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
- inserted_at timestamp with time zone DEFAULT timezone('utc'::text, now()) NOT NULL,
- message text,
- user_id uuid REFERENCES public.users NOT NULL,
- channel_id bigint REFERENCES public.channels NOT NULL
-);
-ALTER TABLE public.messages ENABLE ROW LEVEL SECURITY;
-CREATE POLICY "Allow logged-in read access" on public.messages USING ( auth.role() = 'authenticated' );
-CREATE POLICY "Allow individual insert access" on public.messages FOR INSERT WITH CHECK ( auth.uid() = user_id );
-CREATE POLICY "Allow individual update access" on public.messages FOR UPDATE USING ( auth.uid() = user_id );
-```
+- [Next.js Subscription Payments Starter](https://github.com/vercel/nextjs-subscription-payments)
+- [Next.js Slack Clone](https://github.com/supabase/supabase/tree/master/examples/nextjs-slack-clone)
+- [Next.js Todo List](https://github.com/supabase/supabase/tree/master/examples/nextjs-todo-list)
+- [Next.js Live Tracker Map](https://github.com/supabase/supabase/tree/master/examples/nextjs-live-tracker-map)
+- [And many more...](https://github.com/supabase/supabase/tree/master/examples)
diff --git a/examples/with-supabase-auth-realtime-db/components/Layout.js b/examples/with-supabase-auth-realtime-db/components/Layout.js
deleted file mode 100644
index 1b94dea575aa5ac..000000000000000
--- a/examples/with-supabase-auth-realtime-db/components/Layout.js
+++ /dev/null
@@ -1,80 +0,0 @@
-import Link from 'next/link'
-import { useContext } from 'react'
-import UserContext from '~/lib/UserContext'
-import { addChannel } from '~/lib/Store'
-
-export default function Layout(props) {
- const { signOut } = useContext(UserContext)
-
- const slugify = (text) => {
- return text
- .toString()
- .toLowerCase()
- .replace(/\s+/g, '-') // Replace spaces with -
- .replace(/[^\w-]+/g, '') // Remove all non-word chars
- .replace(/--+/g, '-') // Replace multiple - with single -
- .replace(/^-+/, '') // Trim - from start of text
- .replace(/-+$/, '') // Trim - from end of text
- }
-
- const newChannel = async () => {
- const slug = prompt('Please enter your name')
- if (slug) {
- addChannel(slugify(slug))
- }
- }
-
- return (
-
- {/* Sidebar */}
-
-
-
Channels
-
- {props.channels.map((x) => (
-
- ))}
-
-
-
-
- newChannel()}
- >
- New Channel
-
-
-
-
- signOut()}
- >
- Log out
-
-
-
-
- {/* Messages */}
- {props.children}
-
- )
-}
-
-const SidebarItem = ({ channel, isActiveChannel }) => (
- <>
-
-
- {channel.slug}
-
-
- >
-)
diff --git a/examples/with-supabase-auth-realtime-db/components/Message.js b/examples/with-supabase-auth-realtime-db/components/Message.js
deleted file mode 100644
index 1590a0ab9c09505..000000000000000
--- a/examples/with-supabase-auth-realtime-db/components/Message.js
+++ /dev/null
@@ -1,10 +0,0 @@
-const Message = ({ message }) => (
- <>
-
-
{message.author.username}
-
{message.message}
-
- >
-)
-
-export default Message
diff --git a/examples/with-supabase-auth-realtime-db/components/MessageInput.js b/examples/with-supabase-auth-realtime-db/components/MessageInput.js
deleted file mode 100644
index 1c0e3501beb571a..000000000000000
--- a/examples/with-supabase-auth-realtime-db/components/MessageInput.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import { useState } from 'react'
-
-const MessageInput = ({ onSubmit }) => {
- const [messageText, setMessageText] = useState('')
-
- const submitOnEnter = (event) => {
- // Watch for enter key
- if (event.keyCode === 13) {
- onSubmit(messageText)
- setMessageText('')
- }
- }
-
- return (
- <>
- setMessageText(e.target.value)}
- onKeyDown={(e) => submitOnEnter(e)}
- />
- >
- )
-}
-
-export default MessageInput
diff --git a/examples/with-supabase-auth-realtime-db/docs/quickstart.png b/examples/with-supabase-auth-realtime-db/docs/quickstart.png
deleted file mode 100644
index e406fc9c0826f7c02439d69b8eeb159605bfa28a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 104918
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