人工精选使用 Next.js、React、Tailwind 和 Shadcn 构建的实时聊天应用
这是一门用 Next.js 全家桶做一个完整即时通讯产品的实战课。它要解决的不是"我会不会写组件",而是"我能不能独立交付一个带账号体系、能实时收发消息、能上线给别人用的 Web 应用"。如果你之前只跟着教程做过 Todo List 或者博客首页,那从"能跑起来"到"能给别人用"中间那一大段,正是这
会员可免费下载本篇月会员、年会员、永久会员可免费领取。
开通会员 ›会员 · 按档位
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
这是一门用 Next.js 全家桶做一个完整即时通讯产品的实战课。它要解决的不是"我会不会写组件",而是"我能不能独立交付一个带账号体系、能实时收发消息、能上线给别人用的 Web 应用"。如果你之前只跟着教程做过 Todo List 或者博客首页,那从"能跑起来"到"能给别人用"中间那一大段,正是这门课覆盖的范围。
它具体覆盖哪些工作场景
课程围绕一个真实的聊天产品展开,涉及的功能点都是这类应用绕不开的:用户注册登录与好友关系、一对一和多人群组会话、消息实时推送、已读回执、文件与图片上传、表情选择、音视频通话,最后还有暗色模式、PWA 发布和正式部署。这些不是孤立的练习题,而是同一套代码库里逐步叠加的模块——加好友会影响会话列表的数据结构,已读回执会影响消息状态的存储方式,音视频又会牵扯到信令和媒体权限。学完之后你面对"做一个内部沟通工具""给产品加个客服聊天入口"这类需求时,知道该从哪一层动手。
适合什么基础,哪里可以先跳过
前置要求大致是:能读懂 JavaScript 的异步写法,知道 React 的组件、状态和副作用是怎么回事,HTML 和 CSS 不陌生。课程里有一段 Next.js 基础内容是标注为可选的,如果你已经用过 App Router 或者别的元框架,可以直接跳到项目搭建部分;如果完全没用过,建议老老实实看完,否则后面路由和渲染方式的处理会一头雾水。数据库和实时通信这一块默认你没有太多经验,跟着做即可,但需要你愿意花时间理解数据是怎么存的、订阅是怎么建立的,而不是只把代码复制过去跑通。
建议的推进顺序和练习方式
比较稳的节奏是:先走完项目搭建和布局导航,把整个应用的外壳和页面结构立起来;再进入会话与好友模块,这时候你会第一次接触到数据模型的设计,值得停下来想清楚表结构和字段含义;之后是实时消息、已读回执、上传和表情这些交互细节;最后再处理暗色模式、音视频和部署发布。每加一个功能,建议自己先动手改一处再对照参考实现,比如把消息列表的排序规则换一种写法,或者给上传加上类型校验。
资料本身是配套视频和代码,不要只看不动手。更有效的用法是:看完一个模块后关掉视频,自己从零把那部分逻辑重写一遍,卡住了再回去查。部署那一节尤其要认真跟,把项目真正发布到一个可访问的地址上,这会让前面所有功能的意义变得具体。学完之后,你应该能独立从零搭出一个带登录、实时消息和文件传输的聊天应用,并把它部署上线;至于能不能改成别的形态,比如社区私信或在线客服,就看你愿不愿意在数据模型上再动一次手了。
课程目录
课程目录52 集
- 📁 使用 Next.js、React、Tailwind 和 Shadcn 构建的实时聊天应用 📁 14. AudioVideo call 📁 9. Groups 📁 13. File upload 📁 3. NextJS Basics (optional) 📁 15. Publishing Progressive Web App 📁 5. Layout and Navigation 📁 15. Publishing Progressive Web App 📁 2. Project Setup 📁 1. Introduction 📁 12. Emoji picker 📁 6. Dark Mode 📁 7. Adding Friends 📁 10. Read receipts 📁 8. Conversations 📁 11. Build & Deploy 📁 5. Layout and Navigation 📁 4. Database & Auth setup 📄 2. Rendering audiovideo calls--.en.srt 📄 2. Rendering audiovideo calls--.en_CN.srt 📄 3. Rendering call status--.mp4
- 📄 3. Rendering call status--.en.srt 📄 1. LiveKit setup--.en.srt 📄 1. LiveKit setup--.en_CN.srt 📄 1. LiveKit setup--.mp4
- 📄 2. Rendering audiovideo calls--.mp4
- 📄 3. Rendering call status--.en_CN.srt 📄 1. Introduction to NextJS--.mp4
- 📄 2. Routing in NextJS--.mp4
- 📄 3. Client vs Server components--.mp4
- 📄 2. Routing in NextJS--.en_CN.srt 📄 3. Client vs Server components--.en.srt 📄 1. Introduction to NextJS--.en.srt 📄 1. Introduction to NextJS--.en_CN.srt 📄 2. Routing in NextJS--.en.srt 📄 3. Client vs Server components--.en_CN.srt 📄 2. Adding imagevideofile uploads--.en.srt 📄 2. Adding imagevideofile uploads--.mp4
- 📄 3. Rendering image and video messages--.mp4
- 📄 3. Rendering image and video messages--.en_CN.srt 📄 4. Rendering file messages--.en_CN.srt 📄 1. Setting up uploadthing--.en.srt 📄 1. Setting up uploadthing--.mp4
- 📄 4. Rendering file messages--.en.srt 📄 4. Rendering file messages--.mp4
- 📄 1. Setting up uploadthing--.en_CN.srt 📄 2. Adding imagevideofile uploads--.en_CN.srt 📄 3. Rendering image and video messages--.en.srt 📄 2. Add dialog for creating groups--.en_CN.srt 📄 5. Leave group--.mp4
- 📄 4. Delete group--.en.srt 📄 3. Rendering groups in conversations list--.mp4
- 📄 3. Rendering groups in conversations list--.en.srt 📄 1. Backend for creating groups--.en.srt 📄 5. Leave group--.en_CN.srt 📄 1. Backend for creating groups--.en_CN.srt 📄 4. Delete group--.mp4
- 📄 3. Rendering groups in conversations list--.en_CN.srt 📄 4. Delete group--.en_CN.srt 📄 1. Backend for creating groups--.mp4
- 📄 2. Add dialog for creating groups--.mp4
- 📄 2. Add dialog for creating groups--.en.srt 📄 5. Leave group--.en.srt 📄 2. shadcnui Setup--.en.srt 📄 1. NextJS Project Setup--.en.srt 📄 2. shadcnui Setup--.en_CN.srt 📄 2. shadcnui Setup--.mp4
- 📄 1. NextJS Project Setup--.en_CN.srt 📄 1. NextJS Project Setup--.mp4
- 📄 1. Setting up frontend routes--.en.srt 📄 1. PWA and manifest setup--.en_CN.srt 📄 3. Build and deploy to desktop and mobile--.en_CN.srt 📄 2. Metadata and Next config setup--.mp4
- 📄 2. Metadata and Next config setup--.en_CN.srt 📄 2. Metadata and Next config setup--.en.srt 📄 3. Build and deploy to desktop and mobile--.mp4
- 📄 1. PWA and manifest setup--.en.srt 📄 3. Build and deploy to desktop and mobile--.en.srt 📄 1. PWA and manifest setup--.mp4
- 📄 1. Adding theme switching--.en_CN.srt 📄 1. Adding theme switching--.mp4
- 📄 1. Adding theme switching--.en.srt 📄 1. Creating attachments popover--.en_CN.srt 📄 2. Adding the emoji picker--.en_CN.srt 📄 3. Connecting emoji picker to chat input--.en_CN.srt 📄 3. Connecting emoji picker to chat input--.en.srt 📄 1. Creating attachments popover--.mp4
- 📄 3. Connecting emoji picker to chat input--.mp4
- 📄 2. Adding the emoji picker--.mp4
- 📄 1. Creating attachments popover--.en.srt 📄 2. Adding the emoji picker--.en.srt 📄 2.1 realtime-chat-app.zip
- 📄 1. Introduction--.en_CN.srt 📄 2. Before we begin.html
- 📄 1. Introduction--.en.srt 📄 1. Introduction--.mp4
- 📄 6. Accept friend request--.en_CN.srt 📄 4. Showing pending request count--.mp4
- 📄 4. Showing pending request count--.en.srt 📄 6. Accept friend request--.mp4
- 📄 4. Showing pending request count--.en_CN.srt 📄 5. Deny friend request--.en_CN.srt 📄 2. Add dialog for sending requests--.en.srt 📄 1. Backend for creating friend request--.mp4
- 📄 5. Deny friend request--.mp4
- 📄 3. Render list of requests--.en.srt 📄 2. Add dialog for sending requests--.en_CN.srt 📄 3. Render list of requests--.en_CN.srt 📄 5. Deny friend request--.en.srt 📄 6. Accept friend request--.en.srt 📄 3. Render list of requests--.mp4
- 📄 1. Backend for creating friend request--.en.srt 📄 1. Backend for creating friend request--.en_CN.srt 📄 2. Add dialog for sending requests--.mp4
- 📄 1. Build & deploy to Vercel--.en_CN.srt 📄 1. Build & deploy to Vercel--.en.srt 📄 1. Build & deploy to Vercel--.mp4
- 📄 2. Adding a custom domain--.en_CN.srt 📄 2. Adding a custom domain--.en.srt 📄 2. Adding a custom domain--.mp4
- 📄 2. Adding read receipts to conversations--.mp4
- 📄 3. Showing unseen messages count--.en.srt 📄 3. Showing unseen messages count--.en_CN.srt 📄 2. Adding read receipts to conversations--.en.srt 📄 1. Backend for read receipts--.en.srt 📄 2. Adding read receipts to conversations--.en_CN.srt 📄 3. Showing unseen messages count--.mp4
- 📄 1. Backend for read receipts--.mp4
- 📄 1. Backend for read receipts--.en_CN.srt 📄 3. Chat input and sending messages--.mp4
- 📄 2. Render active conversation--.mp4
- 📄 4. Rendering conversation messages--.en_CN.srt 📄 5. Render last message in conversations list--.mp4
- 📄 1. Render list of conversations--.en_CN.srt 📄 2. Render active conversation--.en.srt 📄 6. Removing friends--.en.srt 📄 6. Removing friends--.mp4
- 📄 2. Render active conversation--.en_CN.srt 📄 6. Removing friends--.en_CN.srt 📄 3. Chat input and sending messages--.en_CN.srt 📄 4. Rendering conversation messages--.mp4
- 📄 3. Chat input and sending messages--.en.srt 📄 1. Render list of conversations--.mp4
- 📄 1. Render list of conversations--.en.srt 📄 4. Rendering conversation messages--.en.srt 📄 5. Render last message in conversations list--.en.srt 📄 5. Render last message in conversations list--.en_CN.srt 📄 1. Setting up frontend routes--.en_CN.srt 📄 3. Items list and conversation container--.en_CN.srt 📄 2. Sidebar & adding navigation--.en_CN.srt 📄 1. Setting up frontend routes--.mp4
- 📄 3. Items list and conversation container--.en.srt 📄 2. Sidebar & adding navigation--.mp4
- 📄 3. Items list and conversation container--.mp4
- 📄 2. Sidebar & adding navigation--.en.srt 📄 2. Clerk Auth Setup--.mp4
- 📄 4. Storing user data in Convex DB--.en.srt 📄 4. Storing user data in Convex DB--.mp4
- 📄 3. Integrating Convex with Clerk--.mp4
- 📄 2. Clerk Auth Setup--.en_CN.srt 📄 3. Integrating Convex with Clerk--.en.srt 📄 4. Storing user data in Convex DB--.en_CN.srt 📄 1. Convex DB Setup--.mp4
- 📄 1. Convex DB Setup--.en.srt 📄 1. Convex DB Setup--.en_CN.srt 📄 3. Integrating Convex with Clerk--.en_CN.srt 📄 2. Clerk Auth Setup--.en.srt


![大疆维修,无人机维修教程[66.30GB]](/api/uploads/b6a69810-862f-479c-a529-d66880073ebc.jpg)


