使用koa和react开发web在线聊天室 - 持续更新

#1

在线地址: http://fiora.suisuijiang.com/
源码地址: https://github.com/yinxin630/fiora

##功能

  • 创建用户, 创建群组, 加入群组, 私聊, 群聊
  • 文本, 图片, 代码, url 等多种类型消息, 还有炸弹 /系统消息两种恶搞消息
  • 消息桌面通知, 声音提醒, 通知开关
  • 用户信息修改, 头像修改, 表情收藏, 群公告修改
  • 消息内容过滤, 消息长度限制, 消息发送频率限制
  • 提供第三方消息的实现接口, 炸弹和系统消息即依此实现(需要重新部署前端才能供其它用户使用)

##技术栈

后端使用 koa 提供一个简易的 http 服务器, 并将所有路由定位到入口 index.html 处理. 使用 socket.io 前后端通讯, 后端 API 采用类似 Restful 风格的接口, 数据库是 MongoDB, 使用 bluebird 和 generator 处理异步, 用户认证采用 jwt token 的方式.

前端基于 react 框架, 资源大部分在 cdn 上(背景图打包进了 js 里), 使用 immutable 和 redux 处理数据, react-router 提供路由, 未使用第三方 UI 库, 页面样式均使用 sass 编写.

:kissing_heart: 欢迎交流, 指导.

8 Likes
#2

挺棒的

#3

:grin: 多谢鼓励.

#4

:kissing_heart: 很强

#5

:joy: 昨晚的更新出了bug, 导致不能登录, 已修复.

#6

内容更新:

  1. 修复部分bug
  2. 添加获取历史消息的功能, 上翻到顶部自动获取, 次数无限制,
  3. 添加公共api, 在控制台输入 fiora.apis 查看api列表
#7

:stuck_out_tongue: 添加一个插件系统, 输入boom(人名)可以发出boom效果.

#8

:grin: 优化了一部分内容, 添加了移动端支持(仅chrome, 暂时功能还不完善), 修改了自己发送的消息的添加机制, 会减少用户的卡顿感.

#9

:grinning: 更新了退出群组功能, 重写了登录注册UI, 添加了系统消息恶搞功能.

#10

:angry: 我也要发系统消息

#11

楼主自己买的服务器么?

#12

是的, 阿里云的学生机, 后来毕业后就按原价续费了.

#13

还是学生好啊,现在免费的没一个好用的,国外的速度太成问题了

#14

我现在的单核1G ram的配置, 流量按量付费. 360/年, 流量费一个月不到1块钱. 比较便宜了. 机器上挂了博客和聊天室.

#15

很棒啊~ 周末研究一下你的源码~

#16

问一下楼主用的哪一种编辑器呢,怎么配置react环境的呢

#17

我用的vscode, 默认就是支持.js和.jsx的, 还有一些额外的插件能用起来更方便, 去插件页搜索"react"找需要的用.

#18

怎么不能注册?? chrome 打开, 点击没有反应

#19

看看控制台有报错么, 是不是版本太低了.

#20

网站需要备案吗?用了多久时间