肝了两个月,我们无偿开源了

56,693 阅读6分钟

cover.png

前言

在两个月前,一位开源社区的朋友(阿伟、阿锋)向我发起了好友申请,说是想要使用JAVA语言重构我的HasChat项目

07fbd367beb401fd8b5dbef9ea9b3cf.jpg

说实在,在此之前也有不少人加过我说要加入,但后来都不了了之,抱着一丝尝试的心态,我还是答应了对方。

但最后我们没有重构HasChat,阿伟觉得HasChat不管怎样,真正用到实际的场合还是比较少,他向我介绍了他自己的想法。

AQChat想法构思

  • 🍇是一款可以在线匿名的聊天软件
  • 🍉用户可以自由创建房间,但不可以随意加入房间,必须输入房间号才可加入房间(房间号在此充当秘钥)
  • 🍍加入房间的用户可以自由聊天,发送文件

到这步,是不是有点腾讯会议的味道了(手动狗头)

最后决定,重开个项目,项目就叫AQChat(Anonymous Quick Chat),于是便开始了两个月的commit旅程

image.png

其中,我是负责PC网页端,阿锋负责移动端,阿伟负责后端

AQChat的波折

最大的波折应该就是

34183627a5b87dc40decde47029cb76.jpg dc804a2e4b0be7834c8ec93a49d4d3d.jpg

我们这个班子,阿伟最近待业忙着准备工作的事,我是因为上班忙工作,下班忙开源、自学,阿锋则是天天下工地

但是回想下,人家都愿意牺牲彼此时间来一起干,自己凭啥还为了忙找借口呢

其次功能比之前难,其中protobuf协议便是第一次接触,理解它都费了一些时间

难点3:前端的UI设计,因为我们都是技术宅,没有任何关于UI的艺术审美细胞,全是自己一步一步尝试,采用不行就推翻重做的野生路子方式,才有了目前的AQChat样式风格

亮点1:AI功能接入,说实在,前期阿伟提过这个想法,但还没想到怎么接入,而我在实现艾特用户这个功能的时候,突然想到可以通过艾特ai助手发问,来实现ai对话,这个想法一拍即合,并且AQChat和Answer Question也巧妙的吻合起来了

image.png

最终实现效果:

image.png

难点4:功能全,这次在纯聊天的基础上,新增了以下功能:

  • 弱网络发送消息超时时,提示并且可重发送

    image.png
  • 消息撤回,重新编辑(为了让重新编辑功能完美,还找了ChatArea作者加了个文本追加的api:reverseAnalysis)

    image.png image.png
  • 文件的发送功能,不仅仅支持图片,还支持视频、音频、doc、pdf、excel等等文件

    image.png
  • 艾特用户功能

    image.png image.png
  • 详细的[加入、离开、离线]提示

image.png
  • 黑暗、高亮模式

    image.png image.png
  • 滚动条在上方时,消息防止触底

    image.png

后续方向

  • 主要工作重心还是维护项目的bug,因为上线的时间太短了,肯定存在很多不足
  • 其次欢迎各位网友提出好的idea,我们会筛选出好的想法,融入到项目之中
  • 完善移动端

以上,全部无偿开源。

有群友问过我,怎么实现营收。关于这个问题,说实在,我从来没有想过,我在码云上开源了不下十个项目,而且是从来毫无保留,说无所图太过于虚假,开源这件事,无非以下几个目的:

①让更多的人参与、使用自己的项目,这是一件很自豪的事;

②开源可以让自己编程更加严谨,从而也无意中进展了技术;

③当自己需要的时候,很多人都会出来帮助自己,像这次主动加我的阿伟、阿锋一样,还有愿意给我出部署教程的阿戴CentOS7部署AQChat匿名在线群聊系统

④最后就是回到群友的问题,当你把开源项目做好时,很多人会主动找到你寻求帮助,甚至会给到一些项目

a50c4b788ad4a4c2887d62ab67d59fc.jpg 7e59c59c219759adebfb799e022fc04.jpg a5313a60687d13757e94ed8e18d52e0.jpg

记得喜欢的好声音选手帕尔哈提在那个夏天说过的一句话:我没有梦想,我在做我自己喜欢的事,梦想会自己来找我。

在线体验

如果大家喜欢,请动手点点star,你们的每个star都是我们更新的动力

交流群

添加howcoder微信进群(关于项目解答、技术/行业/兴趣交流)

免责声明

  • 通用性:本项目是作为一个开源项目提供的,开发者在法律允许的范围内不对软件的功能性、安全性或适用性提供任何形式的明示或暗示的保证
  • 无担保:用户明确理解并同意,使用本软件的风险完全由用户自己承担,软件以"现状"和"现有"基础提供。开发者不提供任何形式的担保,无论是明示还是暗示的,包括但不限于适销性、特定用途的适用性和非侵权的担保
  • 风险承担:在任何情况下,开发者或其供应商都不对任何直接的、间接的、偶然的、特殊的、惩罚性的或后果性的损害承担责任,包括但不限于使用本软件产生的利润损失、业务中断、个人信息泄露或其他商业损害或损失
  • 合法性:所有在本项目上进行二次开发的用户,都需承诺将本软件用于合法目的,并自行负责遵守当地的法律和法规
  • 修改和版本:开发者有权在任何时间修改软件的功能或特性,以及本免责声明的任何部分,并且这些修改可能会以软件更新的形式体现

最终解释权:本免责声明的最终解释权归开发者所有

6.16更新

喜讯一:上那个男人的周刊了

收到了很多人喜欢的反馈,心里特别激动。昨晚凌晨还在忙着写东西,在阮一峰大神的周刊上投稿,下午的时候发现阮一峰大神add了一个weekly标签,发现似乎他周刊的全部推荐都是有这个标签,不知道是不是要上他的周刊了

6377cf1aeaa4633a4baccb1ccd7bcb2.png

周刊.png

喜讯二:掘金热榜第一

第一次上掘金的热榜第一,其实心情既激动又忐忑,昨晚其实就已经在热榜第十了,晚上还激动的在朋友圈晒了截图,阿伟还成功预言了一次

5f9affc15c28c6767ef0b7cedc1de67.jpg

早上六点就睡不着了,起来瞄了一眼,热度已经进前五了,到下午直接干到了第一!

image.png

image.png

喜讯三:上了Gitee的今日热门

image.png

喜讯四:红薯大佬隔开喊话

image.png

image.png

目前已经接入Gitee AI 功能,整个开源项目可玩性变得十分有趣,具体可以看文章:接入AI后,开源项目瞬间有趣了

除了激动,也还有忐忑,一下子获得那么多人的关注,也意味着大家对我们的期待高,所以后续将会持续更新一些新功能,大家有好的想法也欢迎在评论区交流。再次感谢!