Watch 2 Star 0 Fork 0

浅忆︿梦微凉” / happy-chatNodeJS

Sign up for free
Explore and code with more than 2 million developers,Free private repositories !:)
Sign up
一个基于node的聊天室项目 spread retract

Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

聊天室

项目简介

  1. 基于node.js的聊天室系统

运行方式


# clone项目到本地
git clone https://gitee.com/zmjie100/happy-chat.git

# 进入项目目录
cd happy-chat

# 安装项目依赖
npm install

# 运行以下命令打开浏览器的localhost:3000查看
node run serve  

技术栈

node+express+socket.io+jquery+flex

技术说明

  1. 该系统采用前端架构主要采用jQuery+HTML+css技术实现,使用art-template高性能JavaScript模板引擎来实现页面渲染
  2. 后端架构主要采用node.js的Express框架,和socket.io来完成实时双向通讯
  3. 数据库主要采用主流的MySQL数据库来存放用户信息,
  4. 开发环境使用XAMPP(Apache+MySQL+PHP+PERL)强大的建站集成软件包,来实现数据库的链接和关闭。
  5. 开发工具代码编写主要采用Visual Studio Code简称VS code开发,以及Navict作为数据库可视化数据库管理工具,测试环境为pc端的谷歌浏览器。
  6. 源码管理使用git仓库管理,方便更新与迭代
  7. 使用PM2来管理node进程,利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等。

实现功能

  1. 用户注册:用户通过输入用户名,和密码注册,注册信息数据库存档
  2. 用户登录:用户输入用户名和密码登录,登录成功后,用户信息本地存储,跳转聊天首页,进入聊天室
  3. 随机分配用户头像:登录成功后随机给用户分配头像库中的头像
  4. 系统提示在线人员状态(进入/离开): 用户上线和下线在聊天窗口显示文字提示,且所有用户都可见
  5. 接收与发送消息:任意用户发送信息,所有用户均可看见信息
  6. 自定义消息字体颜色:点击字体icon,出现颜色选择表单,用户可以根据自己的爱好选择字体颜色
  7. 支持发送表情:点击表情icon,可以出现聊天表情列表供用户选择,发送表情后所有用户均可看到
  8. 支持发送图片:点击图片icon,调起系统文件夹,选择图片发送,所有在线用户均可看到这张图片
  9. 支持发送窗口震动: 点击抖动icon,窗口左右抖动,所有用户均可看到抖动效果

数据库设计与实现

创建用户数据库

  1. 储存用户名和密码

  2. 用户表语句如下

CREATE TABLE `user` (
  `id` bigint(6) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户id',
  `name` varchar(18) NOT NULL COMMENT '用户名',
  `password` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT '密码',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

注册

Comments ( 0 )

You need to Sign in for post a comment

Help Search

Gitee_sixth 5th_float_left_close