菜鸟 IM 项目前端代码 - 仿 Discord UI 即时通讯/社区/群组平台
Full Stack IM Project
探索本项目的文档 »
查看代码
·
报告Bug
·
提出新特性
Node Version >= v18.19.0
在开始启动 Rookie Discord 前,需注册以下平台,并创建应用。
- Clerk.一个全面的用户管理平台,可以通过配置,快速的让 APP 接入不限于
Google、Github、LinkedIn
等平台的第三方登录.Rookie Discord
使用 Clerk 接入登录 - Uploadthing.一个简单易用的云文件存储平台;
Rookie Discord
中的文件使用 Uploadthing 存储 - LIVEKIT.一个实时音视频平台;用于快速构建实时语音和视频应用程序
- 克隆仓库到本地
git clone https://github.com/Eumenides1/rookie-discord.git
- 新建环境配置文件
在项目根目录下新建
.env
文件,并添加以下配置, 根据开发前配置要求替换配置文件中的相关配置
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY= {Clerk app key} // 注册 clerk 应用获取
CLERK_SECRET_KEY={Clerk app secret} // 注册 clerk 应用获取
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
UPLOADTHING_SECRET={uploadthing secret}
UPLOADTHING_APP_ID={uploadthing appid}
DATABASE_URL="mysql://{username}:{password}@{db IP}:{db: port}/rookie_discord?schema=public"
LIVEKIT_API_KEY={live kit api key}
LIVEKIT_API_SECRET={livekit secret}
NEXT_PUBLIC_LIVEKIT_URL={livekit wss url}
- 安装依赖
## npm
npm install
## yarn
yarn install
- 初始化数据库
仓库自带数据库模型文件 @prisma/schema.prisma
## 1 step 生成数据库模型
npx prisma generate
## 2 step 推送数据库表到数据库
npx prisma db push
## 3 step prisma 提供的数据库可视化界面
npx prisma studio
- 启动
npm run dev