Skip to content

Swordingman/easychat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🚀 EasyChat - 一款功能丰富的桌面端即时通讯应用

image

✨ 项目简介

EasyChat 是一款从零开始,基于 Spring Boot + Electron + Vue 3 技术栈打造的全功能、仿微信风格的桌面端在线聊天系统。本项目旨在通过实践,完整地覆盖一个现代化全栈应用的设计、开发、部署与发布全链路流程。

它不仅仅是一个聊天工具,更是一个包含了用户认证、实时通信、好友管理、群组社交、富媒体消息、云存储集成等多个核心模块的综合性项目。

🔗 点击这里,下载最新发布的客户端!)


🌟 功能亮点

  • 现代化的 UI/UX: 采用经典的IM布局,界面简洁,交互流畅。
  • 核心聊天功能:
    • 私聊 & 群聊: 支持点对点和多对多的实时消息通信。
image
*   **富媒体消息**: 不再局限于文字!支持发送 **Emoji表情、图片、视频、文件**,并能在聊天窗口中完美预览。
image
*   **实时提醒**: “未读消息”与“新的好友请求”均有小红点提示,重要信息不错过。
image
*   **消息持久化**: 所有聊天记录(包括离线消息)都安全地存储在云端数据库中。
  • 完善的社交体系:
    • 身份系统: 基于唯一的 EasyChat号,支持注册和登录。
    • 好友管理: 支持搜索用户、发送/处理好友请求、删除好友的完整流程。
image image
*   **群组管理**: 支持**创建群聊、邀请/移出成员、修改群信息**(群头像、群名、群公告)。
image image
  • 个性化设置:
    • 支持用户自由修改个人头像、昵称
image

🛠️ 技术栈

本项目是一个典型的前后端分离的全栈应用。

后端 (easychat-server)

  • 框架: Spring Boot
  • 语言: Java 21
  • 身份认证: Spring Security + JWT (JSON Web Token)
  • 数据库: MySQL 8.0 + Spring Data JPA
  • 实时通信: WebSocket
  • 文件存储: 阿里云 OSS
  • 构建工具: Maven

客户端 (easychat-client)

  • 框架: Electron + Vite
  • 前端核心: Vue 3 + TypeScript
  • 状态管理: Pinia
  • UI 组件库: Element Plus
  • HTTP 请求: Axios
  • 打包工具: Electron Builder

部署与运维

  • 服务器: 阿里云 ECS (Ubuntu Server 22.04 LTS)
  • 反向代理: Nginx
  • 安全: HTTPS (由 Let's Encrypt + Certbot 自动配置)
  • 进程守护: systemd

🚀 快速上手 (作为用户)

  1. 访问本项目的 Releases 页面
  2. 根据你的操作系统,下载最新的安装包(例如 EasyChat.Setup.1.0.0.exe)。
  3. 双击运行安装程序,一路“下一步”即可。
  4. 打开 EasyChat,注册一个新账号,开始你的聊天之旅!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors