一个支持端到端加密的 IM 系统,支持单聊、群聊。
- 🚀 React 18 + Next.js 14 + TypeScript
- ✨ UI 使用 Ant Design + Tailwind CSS
- 💡 使用 Socket.IO 通信,支持端到端加密
- 🥭 Prisma ORM + MongoDB 数据库
- 💾 Zustand 存储
- 🪝 随处可用的 ahooks 钩子
- 🎇 ESLint Flat Config + 自动修复
- 📐 超简单的 Git 钩子,规范提交代码
Tip
推荐阅读如何使用 Docker Compose 部署开发环境,而无需安装 MongoDB、Redis、RabbitMQ。
项目依赖:
- Node.js >= 20.x
- pnpm >= 9.x
建议使用 NVM 管理 Node.js 版本:
nvm install 20
nvm use 20
安装 pnpm
:
corepack enable
corepack prepare pnpm@latest --activate
安装依赖:
pnpm i
先准备配置开发环境:
cp .env.example .env
启动项目:
pnpm dev
格式化代码:
pnpm lint
为了显示即时通讯效果,开发时请启动 chat-websocket 项目,详情参见项目文档。
复制并配置环境变量:
cp .env.example .env.production
构建项目:
pnpm build
运行构建后的项目:
pnpm start
Docker 部署参见 Docker 部署。