Welcome to the Ultimate Next.js 15, TypeScript and Supabase Course! In this course, you'll learn how to build a fully-featured Slack clone from scratch. This README will guide you through setting up the project and running the course.
Before you begin, make sure you have the following installed:
- Node.js (v14 or later)
- Bun (latest version) or you can use npm or what works for you
- Git
Follow these steps to set up the project:
-
Clone the Repository:
git clone https://github.com/laribright/slack-clone.git cd slack-clone
-
Install Dependencies:
bun install
-
Set Up Environment Variables:
- Rename the
.env.example
file to.env.local
and fill in the required environment variables.
mv .env.example .env.local
- Rename the
-
Run the Development Server:
bun dev
Your app should now be running on http://localhost:3000.
This course is divided into multiple modules, each covering different aspects of building the Slack clone. The modules include:
- Setting up Next.js and TypeScript
- Configuring Supabase (RPC, Storage, SQL, Role Level Security)
- Styling with Tailwind CSS and Shadcn UI
- Implementing Authentication (Google Auth, GitHub Auth, Email Auth with Magic Link)
- Managing state with Zustand and React Hook Form
- Real-time communication with Socket.IO
- Handling file uploads with Uploadthing and Supbase Storage
- Advanced Next.js features and middleware
All SQL scripts used in this course can be found in the sql.txt
file. These scripts will help you set up your database schema, functions, and other necessary configurations.
For detailed documentation and additional resources, refer to the docs.tsx
file. This file contains links to various documentation pages for the libraries and tools used in this course.
Make sure to properly configure your environment variables by referring to the .env.example
file. This file contains example values and instructions on what needs to be filled in.
Watch the full course on YouTube: Ultimate Next.js 15, Typescript and Supabase Course: Build a Full-Featured Slack Clone
Part 2 Watch the full course on YouTube: Ultimate Next.js 15, Typescript and Supabase Course: Build a Full-Featured Slack Clone
If you have any questions, need further help, or want to engage with other learners, join our Discord group. Here, you can get personalized mentorship, ask questions, and share your progress.
If you find any issues or have suggestions for improvements, feel free to open an issue or submit a pull request. Contributions are always welcome!
If you find this course helpful, please give this repository a star to show your support!
Happy coding! Let's build something amazing together.