简单版的微信
1、立项背景和目标
项目定位为轻量级即时通讯与社交应用,参考微信核心使用场景,实现账号体系、单聊、好友关系与朋友圈,便于在移动端与桌面端完成注册、登录、收发消息、浏览动态。目标是在前后端分离架构下,用一套客户端覆盖 Android、iOS、Windows,并与自研后端(Rust)打通,形成可部署、可演示的完整产品闭环。
2、软件功能与核心功能模块
账号与鉴权:注册、登录、JWT 鉴权;登录态持久化与退出。
通讯录与好友:搜索用户、发送/处理好友申请、好友列表、删除好友。
单聊:会话列表(按最近消息排序)、与指定好友的聊天页、文本消息收发与删除;消息通过 WebSocket 实时推送,HTTP 拉取历史。
朋友圈:发布图文动态、列表流式加载、点赞、评论与删除评论、删除自己的动态。
个人中心:查看/编辑昵称与头像、修改资料。
通用能力:图片选择与上传、多端自动打包(CI 产出安装包)。
3、业务流程与功能路径
使用路径:打开 App → 登录/注册 → 进入主界面(会话/通讯录/发现/我)→ 在「通讯录」搜索并加好友 → 在「会话」选会话或发起单聊 → 在聊天页发消息、收实时推送;在「发现」看朋友圈、发动态、点赞评论;在「我」查看与编辑个人资料。
消息链路:客户端通过 WebSocket 与后端保持长连接,发送消息走 HTTP 写入库并经服务端转发至对端 WebSocket;接收方在连接上收推送并更新会话与聊天页。
数据与安全:敏感接口统一 JWT 校验;Token 与用户信息本地持久化,退出时清除。
社交