genal-chat

用 TypeScript 一把梭,快速搭建全栈实时聊天室

开源 🏷️完全免费 ⚠️ 链接可跳转,访问体验不确定 对话助手 🍴 复刻 387 🐛 待处理 44 👀 关注 21
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1988
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,官网可访问,提供在线聊天室服务,完全免费。

项目预览

genal-chat 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类对话助手
开发团队genalhuang
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,官网可访问,提供在线聊天室服务,完全免费。
访问状态⚠️ 链接可跳转,访问体验不确定
是否开源是
开源协议MIT
主要语言TypeScript
技术栈/模型chatbot,chatroom,javascript,nestjs,nodejs,socket-io,typeorm,typescript,vue,vuex
GitHub 星标★ 1988
上线时间2020-06-24 00:00:00
代码更新2023-01-24
仓库体积32.6 MB
本站数据更新2026-11-09
维护状态低维护
收录时间2026-08-09
浏览次数5

项目介绍

genal-chat 是一个基于 NestJS + Vue 的全栈聊天室项目,采用 TypeScript 编写,前后端分离架构。它解决了开发者快速搭建实时聊天应用的需求,提供完整的聊天室功能,包括用户认证、消息收发、群组管理、好友系统等。核心能力在于使用 Socket.IO 实现实时双向通信,通过 TypeORM 管理数据持久化,并利用 Vuex 管理前端状态。项目结构清晰,代码规范,适合作为学习全栈 TypeScript 开发的范例,也可作为生产环境的起点。它涵盖了从后端 API 设计到前端组件开发的完整流程,帮助开发者理解前后端交互、实时通信、数据库设计等关键知识点。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1988

使用教程

难度:入门 约 15 分钟 部署方式:本地安装 5 步

环境要求

  • Node.js(README 标注版本 node v10.16.3)
  • MySQL 数据库,并新建一个名为 chat 的数据库
  • chat 数据库字符集必须为 utf8mb4
  • 已安装 npm,用于前后端依赖安装

安装与启动步骤

  1. 1克隆项目代码

    把仓库拉到本地,得到前后端两个子目录 genal-chat-client 和 genal-chat-server。

    git clone https://github.com/genalhuang/genal-chat.git
    cd genal-chat
  2. 2创建 MySQL 数据库

    README 说明数据库没有 SQL 脚本,只需新建一个 chat 数据库,注意字符集为 utf8mb4。

    mysql -u root -p -e "CREATE DATABASE chat DEFAULT CHARACTER SET utf8mb4;"
  3. 3修改数据库配置

    打开后端 app.module.ts,直接把里面的数据库密码改成你自己的 MySQL 密码,库名保持 chat。

  4. 4安装并启动后端

    进入后端目录安装依赖并启动开发服务,启动后有编译报错需先解决再继续。

    cd genal-chat-server
    npm i
    npm run start:dev
  5. 5安装并启动前端

    另开一个终端进入前端目录,安装依赖并启动开发服务器,按提示打开本地地址访问。

    cd genal-chat-client
    npm i
    npm run serve

关键配置

配置项必填说明示例
数据库密码(app.module.ts)是后端连接 MySQL 使用的密码,需改成你自己的'your_mysql_password'
数据库名是README 要求新建并使用的数据库名chat
数据库字符集是建库时指定的字符集,README 强调必须为 utf8mb4utf8mb4

如何确认成功

后端 npm run start:dev 无报错持续运行;前端 npm run serve 输出本地访问地址,浏览器打开能看到聊天室登录界面并能注册登录。

常见问题

Q:MySQL 连接报 error: ER_NOT_SUPPORTED_AUTH_MODE 怎么办?

A:README 说明这是 mysql 版本不兼容导致的,参考文中给出的文章(https://blog.csdn.net/qq_41831345/article/details/83150502)调整即可。

Q:项目没有 SQL 脚本,表结构怎么来?

A:README 明确说没有 sql 脚本,只需新建 chat 数据库并修改后端 app.module.ts 中的数据库密码,表结构由后端 TypeORM 处理。

Q:为什么官网 www.genal.fun 打不开?

A:README 标注该在线地址已失效,作者不打算再部署,需要自己按本文档在本地跑起来。

注意事项

  • README 声明项目已停止迭代,作者欢迎 fork 后自行开发。
  • 必须使用 utf8mb4 建库,否则中文或表情包可能出现乱码。
  • 前端和后端要分别在两个终端里启动,后端不停运行时前端才能正常通信。
  • README 中另有《阿童木聊天室部署说明》文档链接,可进一步参考生产部署方式。

核心亮点

  • 全栈 TypeScript,前后端类型安全,开发体验统一
  • 基于 NestJS + Socket.IO,实时通信稳定且架构清晰
  • 功能完整,包含用户认证、群组、好友等聊天室核心模块

不足之处

  • 项目星标量级一般,社区生态和文档支持可能有限
  • 功能相对基础,高级特性如消息已读、语音视频等缺失

适用场景

  • 学习 NestJS 和 Vue 全栈开发的最佳实践
  • 快速搭建内部团队沟通工具或小型社群聊天室
  • 作为实时通信功能(如客服系统)的脚手架

替代项目

Rocket.Chat、Mattermost、Tailchat

上一篇:onebot

下一篇:messaging-apis

同类项目推荐

chat_gpt_oicq 开源

在 QQ 里养一只猫娘 AI,随时陪你聊天

ChatGPT qq机器人 谁不想拥有一只可爱的猫娘呢~

★ 279 2026-08-09
ChatGPT-in-Slack 开源

在 Slack 里直接召唤 ChatGPT,无需切换工具,提升团队效率

Swift demonstration of how to build a Slack app that enables end-users to interact w···

★ 512 2026-08-09
dynamic-seq2seq 开源

用 TensorFlow 快速训练一个中文聊天机器人

seq2seq中文聊天机器人

★ 332 2026-08-09
speak-gpt 开源

用语音和 ChatGPT 对话,解放双手,随时问答

Your personal voice assistant based on OpenAI ChatGPT.

★ 447 2026-08-09
rasa_milktea_chatbot 开源

用BERT提升中文意图识别,快速搭建奶茶店点单机器人

Chatbot with bert chinese model, base on rasa framework(中文聊天机器人,结合bert意图···

★ 109 2026-08-09
HuixiangDou 开源

把技术问答机器人拉进群,自动翻文档答问题,省去人工重复答疑。

HuixiangDou: Overcoming Group Chat Scenarios with LLM-based Technical Assistance

★ 2500 2026-08-09
whatsapp-chatgpt-bot 开源

给WhatsApp装上AI大脑,支持图文语音,自动回复客户。

Ready-to-use AI Multimodal ChatGPT-based WhatsApp chatbot assistant for your busines···

★ 185 2026-08-09
underthesea 开源

越南语 NLP 一站式工具箱,开箱即用

Underthesea - AI Assistant

★ 1816 2026-08-09
WeChatMsg 开源

一键导出微信聊天记录,喂给大模型做分析

★ 42334 2026-08-09