MCPcopy Index your code
hub / github.com/GetStream/fullstack-nextjs-whatsapp-clone

github.com/GetStream/fullstack-nextjs-whatsapp-clone @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
25 symbols 65 edges 26 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Building WhatsApp Clone0-1200x630px

Fullstack WhatsApp clone using Next.js, Vercel and Supabase

This project contains all the code to run the FullStack WhatsApp clone using Next.js and Supebase. The codebase was developed for an article series published on Stream's blog:

The purpose of this repository is to demonstrate below:

  • Implementing UI elements by customizing existing Stream Chat and Stream Video components.
  • How to implement authorization using Supabase.
  • How to integrate Stream Video in a Stream Chat implementation.

To run this code, you need to have an active Stream and Supabase account.

How to use

  1. Create a new Supabase project
  2. Sign up for a Stream trial account
  3. Rename .env.local.example to .env.local
  4. Update the values for NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY from your Supabase project's API settings
  5. Update the values for NEXT_PUBLIC_REACT_APP_STREAM_KEY and REACT_APP_STREAM_SECRET from your Stream project's dashboard
  6. Run npm run dev to start the local development server

Deploy your own instance

Deploy with Vercel

Make sure you have the Supabase and Stream credentials available when you want to deploy to Vercel. The deployment will ask for these environment values:

  • NEXT_PUBLIC_SUPABASE_URL
  • NEXT_PUBLIC_SUPABASE_ANON_KEY
  • NEXT_PUBLIC_REACT_APP_STREAM_KEY
  • REACT_APP_STREAM_SECRET

https://github.com/GetStream/fullstack-nextjs-whatsapp-clone/assets/39677/bf4f9bc8-f3aa-4c01-9d61-0ab829e55fcb

🛥 Stream Chat SDK

Fullstack WhatsApp clone using Next.js and Vercel is built with Stream Chat SDK for React to implement messaging systems. And Stream Video SDK for React to implement video calling. If you’re interested in adding powerful In-App Messaging to your app, check out the React Chat Messaging Tutorial! And for video, check out the React Video Tutorials!

Related Information

🤝 Contribution

Anyone can contribute and improve this project following the Contributing Guideline.

Find this repository useful? 💙

Support it by joining stargazers for this repository. :star:

Also, follow maintainers on GitHub for our next creations! 🤩

License

Copyright 2022 Stream.IO, Inc. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Core symbols most depended-on inside this repo

meetingId
called by 1
components/CreateCallButton/CreateCallButton.tsx
throttle
called by 1
app/hooks/useDraggable.ts
useDraggable
called by 1
app/hooks/useDraggable.ts
middleware
called by 0
middleware.ts
WhatsAppChat
called by 0
components/WhatsAppChat.tsx
LogoutButton
called by 0
components/LogoutButton.tsx
ChannelListHeader
called by 0
components/ChannelListHeader.tsx
Channel
called by 0
components/Channel/Channel.tsx

Shape

Function 25

Languages

TypeScript100%

Modules by API surface

app/hooks/useDraggable.ts5 symbols
components/Video/Video.tsx2 symbols
components/CreateCallButton/CreateCallButton.tsx2 symbols
components/ChannelHeader/ChannelHeader.tsx2 symbols
middleware.ts1 symbols
components/WhatsAppChat.tsx1 symbols
components/LogoutButton.tsx1 symbols
components/ChannelListHeader.tsx1 symbols
components/Channel/Channel.tsx1 symbols
app/page.tsx1 symbols
app/login/page.tsx1 symbols
app/login/messages.tsx1 symbols

For agents

$ claude mcp add fullstack-nextjs-whatsapp-clone \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact