217fb08540ae32fd9fd01d4f25beb51edb3db10d
NodeCrypt Web 聊天系统
已完成功能
- 登录与加入房间弹窗:支持输入用户名、房间名、房间密码,禁止输入空格和特殊符号,支持通过分享链接自动填充房间信息。
- 房间分享链接自动生成与复制:可一键生成当前房间的专属链接(含密码),并复制到剪贴板,便于邀请他人加入。
- 多房间(节点)支持:可同时加入多个房间,左侧房间栏支持动态切换,房间状态独立保存。
- 聊天消息实时同步:支持文本与图片消息,消息自动同步到所有在线成员。
- 图片粘贴、拖拽、附件上传发送:支持直接粘贴、拖拽图片或通过附件按钮上传图片,自动压缩大图片,限制单张图片最大5MB。
- 图片可点击全屏预览:聊天图片点击后可全屏预览,支持缩放、拖动、双击还原,ESC或点击关闭。
- 系统消息提示:如用户加入/退出、房间状态变更等,系统消息以特殊气泡样式居中显示。
- 在线成员列表实时更新:右侧成员栏实时显示在线成员昵称与头像,自动区分自己与他人。
- 支持自定义头像:基于用户名自动生成 SVG 头像,所有头像样式统一,支持昵称变更自动刷新头像。
- 输入框多行自适应高度:输入区高度随内容自动扩展,支持多行输入,采用 Telegram 风格占位符。
- 禁止用户名、房间名、密码输入空格和特殊符号:输入时自动过滤,提升安全性和一致性。
- 响应式布局:支持侧边栏和右侧成员栏宽度拖拽调整,适配不同屏幕宽度。
- 前端防止 XSS 攻击:所有用户输入内容均进行 HTML 转义,防止脚本注入。
- 退出房间彻底销毁连接:退出房间时断开与服务器的连接,清理房间数据,支持全部房间关闭后自动刷新页面。
- 主要交互均有动画与友好提示:如菜单弹出、系统消息、按钮反馈等,提升用户体验。
待完成目标
- 支持更多类型的消息:如文件、表情包等,丰富聊天内容形式。
- 聊天记录本地持久化与历史消息加载:支持浏览历史消息,断线重连后自动恢复聊天记录。
- 移动端适配与优化:提升在手机、平板等移动设备上的使用体验。
- 更完善的错误处理与网络异常提示:如连接超时、消息发送失败等,提供明确的用户提示。
- 多语言支持:支持中英文等多语言界面切换。
- 更丰富的用户资料与个性化设置:如自定义昵称、头像、个性签名等。
- 服务端权限与安全机制增强:如房间管理员、踢人、禁言、消息撤回等权限控制。
如有建议或问题,欢迎 Issue 或 PR!
Description
🔒True end-to-end encrypted (E2EE) chat system in web. 🔒真正的网页端到端加密聊天系统
https://nodecrypt.shuaiplus.workers.dev/
13 MiB
0 Stars
1 Watchers
0 Forks
Languages
JavaScript
75.2%
CSS
17.7%
HTML
5.5%
Dockerfile
1.6%