Java 社区论坛 - Sym 1.6.0 发布

本贴最后更新于 2956 天前,其中的信息可能已经时移世异

简介

Sym 是一个用 Java 写的现代化的社区论坛,欢迎来**体验**!(如果你需要搭建一个企业内网论坛,请使用 SymX

  • 非常详细的 Sym 功能点脑图
  • 如果你在搭建或者二次开发时碰到问题,欢迎加 Q 群 17370164 进行讨论

Sym 的诞生是有如下几点原因:

(正版)

  • 好用的 Java 开源论坛系统难以寻找
  • 很多系统界面上仍然保持着老式风格,远远没有跟上前端发展的脚步
  • 很多系统没有创新、好玩的特性,缺少现代化的用户体验
  • 我们正在探索新的论坛模式,实现独奏(Solo)与协奏(Symphony)相结合的社区新体验

(野版)

  • 做最 NB 的开源论坛系统
  • 作者技痒,炫技之作

基本理念

实时交互

在浏览帖子时,传统论坛都是需要刷新页面来查看回帖的,而 Sym 则是基于 WebSocket 技术进行回帖推送,看帖时不需要刷新页面也可以看到其他人回帖。

互联

Sym 提供了 API 进行帖子、回帖的同步(B3log 构思),目前 SoloTypechoZ-BlogPHPWordPress 均已经提供插件来进行内容同步,欢迎大家进行接入!

HTML5

Sym 使用了很多 HTML5 提供的技术特性,比如

  • 通过使用本地存储防止编辑帖子/回帖时内容丢失
  • 使用了音频特性来进行帖子/回帖音频录制、播放
  • 复制/粘贴上传图片
  • CSS3 动画

通过使用这些技术,Sym 可以让用户在分享、交流时更加便捷、舒服

安装

需求:Maven3+、MySQL5.5+、Jetty9+/Tomcat9+

  1. 下载源码
  2. 解压后修改 src/main/resources/local.properties 中的数据库配置,并创建数据库
  3. _可能需要_修改 latke.properties 中的端口为容器端口
  4. _可能需要_修改 init.properties 中的管理员账号
  5. 使用 mvn install 进行构建
  6. 将构建好的 war 包部署到容器中,数据库表会在第一次启动时自动建立

注意:

  • 没有数据库建表 SQL 脚本,手动建库后,表会在第一次启动时自动生成
  • 生产环境建议使用反向代理,并需要配置好 WebSocket 代理
  • Tomcat 用 9 以上版本,最好是使用最新版本

配置

  • 图片上传默认是上传服务器本地,要使用七牛可配置 symphony.properties 中的 qiniu.* 属性
  • 将 WEB-INF/cron.xml 中注释掉的部分打开
  • 邮件发送使用的是 SendCloud,需要配置 symphony.properties 中的 sendcloud.* 属性
  • 用户注册时需要验证邮箱的,所以必须先配置好 SendCloud

如果遇到问题,可以参考一下这篇帖子

案例

如果你也搭建好了,欢迎通过 Pull Request 将你的站点加到这个列表中 :-p

商用授权

如果需要将 Sym 用于商用(比如公司搭建对外社区),则必须付费,报价 ¥4000,请联系我(Q845765)进行细节咨询。

开源授权

请仔细查看并遵循使用条款,尊重我们的劳动成果。

商用授权和开源授权在功能上没有任何区别,但商用授权后可以去除页脚版权部分。如果在未获得商用授权前私自去除版权部分,必将追究法律责任。

感悟

在实现 B3log 构思的这几年:

  • 我们见证了 xAE(GAE/BAE/SAE/etc)的兴起与没落。2009 年选择了 GAE 作为服务器,并开始实现 Latke 框架来解决跨云平台,直到告别 GAE,不得不感叹技术更迭之快
  • 感受到了自造轮子的优缺点,并且可以肯定一点:对于一个想要长久的产品来说,自制技术框架优势远大于劣势
  • 一个好玩的产品或说是细节特性然并卵,需要做的是一个能够持续提供用户价值的产品/特性
  • 虽然直到目前 B3log 系产品用户不多,但我们已经初步证明了:Java 用来实现博客、论坛没有什么不好的
  • 使用开源软件,了解开源思想,融入开源
  • 如果你想做个程序员相关的论坛,请三思
  • 你怎么看待社群、社区这两个词?
  • UGC 社区价值生态

贡献

Sym 的主要作者是 DanielVanessa,所有贡献者可以在这里看到。

我们非常期待你加入到这个项目中,无论是使用反馈还是代码补丁,都是对 Sym 一份满满的爱 ❤️

Terms

  • This software is open sourced under the Apache License 2.0
  • You can not get rid of the "Powered by B3log 开源 • [Sym](https://github.com/b3log/symphony)" from any page, even which you made
  • If you want to use this software for commercial purpose, please mail to support@liuyun.io for a commercial license request
  • Copyright © b3log.org, all rights reserved

鸣谢

Sym 的诞生离不开以下开源项目:

  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3187 引用 • 8213 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    408 引用 • 3574 回帖 • 1 关注
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    524 引用 • 4601 回帖 • 699 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1063 引用 • 3453 回帖 • 203 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • meikaiyipian 1

    首页难改呀。。。众口难调

  • 其他回帖
  • 88250

    谢谢这么中肯的建议!

    UI 设计在我和 @Vanessa 这里一直是个难题,还好最近很多朋友给了一些好的设计建议和思路,关于界面不用担心,会保持改进的。
    搜索确实是偷懒了,主要是没有足够时间来做,所以集成第三方搜索先顶一阵子,后期肯定会内置实现的。

    Sym 这一版从 Discourse 借鉴(抄袭)了一些特性,比如回复/引用、楼层快链跳转。下一版也会进一步参考它的(信任系统/勋章系统),它确实是目前设计和理论上非常先进的系统。

    我们会一直改进的,欢迎提各种建议意见,一起讨论。

    PS 提及一下 @R,他给了 Sym 非常多的可行建议,在此再次感谢了 ❤️

    1 回复
  • ac 1

    以前用过一段时间,刚刚看了下新版,谈下感受吧:

    页面设计还是有点乱。以前看是 v2ex 的翻版,貌似大部分新的开源社区都是抄 v2ex 理念和布局。这种密密麻麻跟邮件一般的节点列表,看起来就不爽,以前在 v2ex 那边也吐槽过。早年这样设计看起来还算不错,但现在就明显落伍了,只是人家已经火起来了现在懒得改也办法,能火也是个奇葩,可看出来技术人员当时是多缺少交流的社区。可笑的是现在很多开源社区仍然抄这么老的设计。

    好多配置插件安装麻烦,ES 搜索,根本搜不到准确内容,看到官方用 algolia,我也是无语了,在开源程序使用商业软件,而且免费额度用完之后收费是极贵的。不知道出发点在哪?
    介绍一开始就说是一个现代化论坛,建议作者看看 Discourse。Symphony 怎么看都像个半成品。

    好的就不说了,也是希望国内有好的开源论坛,国内找个优秀的开源社区程序真的难。

    2 回复
  • ac

    谢谢回复,希望 sym 以后能成为最好的开源社区系统

    1 回复
  • 查看全部回帖