Skip to content

💌MeChat - A simple cross-platform chatting software for PC. (XMU 2018 Data-Structure curriculum design)

License

Notifications You must be signed in to change notification settings

kirainmoe/MeChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


MeChat

MeChat:一个简单的、跨平台的电脑版聊天程序。

这是厦门大学信息学院 2018 级计算机系数据结构课程设计:题目七《实现电脑版的微信》

chatting.png

Demo

可以在 Release 页面下载。

目前支持 Windows 7+,macOS 10.13+, Linux.

Usage

安装环境

MeChat 服务端和客户端开发环境需要 Node.jsMongoDB 环境:

克隆代码

克隆此仓库的代码可能需要下载 git

git clone https://github.com/kirainmoe/mechat
cd mechat

启动 MeChat 服务端

服务端代码位于 mechat-server 目录中。

cd mechat-server
npm install        # 安装依赖

如果你需要修改服务器的端口、MongoDB 的密码等,可以修改配置文件 config.js,否则保持默认即可。

然后启动 MeChat 服务端:

npm start

在服务器端上部署的方法与上述一致。

启动 MeChat 客户端开发服务器

MeChat 客户端开发服务器,以及主要的前端程序代码位于 mechat-core 目录中。

cd mechat-core
npm install    # 安装依赖

启动 webpack-dev-server 开发服务器,默认的端口是 3000:

npm start

启动 MeChat 客户端 GUI

MeChat 客户端采用 Electron 构建,位于 mechat-client 目录中。启动方式如下:

cd mechat-client
npm install         # 安装依赖
npm start

打包 MeChat Electron 程序

首先将 mechat-core 目录下的前端核心代码打包:

cd mechat-core
npm run build

打包完成会得到 build 目录,将其整个目录复制到 mechat-client 目录中,然后进入该目录执行打包命令:

npm run pack             # 打包 Windows 程序
npm run pack:macos       # 打包 macOS 程序
npm run pack:linux       # 打包 Linux 程序

打包的可执行程序会存放在上一级目录的 release 文件夹中。

Functions

  • 用户登录、注册功能
  • 用户资料系统
  • 好友和备注系统
  • 群聊系统
  • 实时信息推送
  • 文字和图片发送
  • 好友动态

Tech Stack

服务端

  • Node.js (开发语言)
  • Express (Web 框架)
  • MongoDB (数据库)
  • WebSocket (实时信息流协议)

客户端

  • Electron (GUI 框架)
  • webpack (模块打包程序)
  • React(Javascript 框架)
  • react-router(路由框架)
  • mobx(状态管理框架)

其它

  • font-awesome(UI 图标库)
  • honoka

Screenshot

login.png

register.png

chatting.png

profile-edit.png

group.png

circle-1.png

circle-3.png

circle-2.png

Copyright & License

©2019 Yume Maruyama (Yuhang Qiu).

This project is my curriculum design of XMU 2018 Data Structure course.

MeChat is MIT Licensed.