当前位置: 首页> 开源推荐> 正文

推荐Fresns:一款免费开源、专为跨平台打造的通用型社区产品,支持灵活多样的内容形态,满足多种运营场景

什么是Fresns?

Fresns

一款免费开源的社交网络服务软件

专为跨平台而打造的通用型社区产品,支持灵活多样的内容形态,可以满足多种运营场景,符合时代潮流,更开放且更易于二次开发。

免费开源

永久免费并且开放源代码,还有详细的研发文档(包含前后端原型、流程图、数据字典、API Wiki 等资料内容),可以完完整整了解产品逻辑。

自由使用

不限任何用途使用本产品,包括商业用途,甚至知识产权使用权(发明专利和计算机软件著作权)也永久免费授予 Fresns 用户。

生态支持

极致灵活的产品架构,集思广益的开发者生态,可以满足任何市场背景和运营场景的服务需求,包括商业变现的支持,让想象力无限可能。

Fresns 是一款免费开源的社交网络服务软件,专为跨平台而打造的通用型社区产品,支持灵活多样的内容形态,可以满足多种运营场景,符合时代潮流,更开放且更易于二次开发。

程序结构

前后端分离

动静态分离

功能模块化

许可协议

Fresns 遵循 Apache-2.0 开源协议。

可以任何目的运行该软件。

可以学习并修改该软件,以使其按您的意愿执行。

可以重新分发软件拷贝。

可以将修改后的软件副本分发给他人。

功能特征

轻量简约

功能灵活多样,可以实现目前已知的任何社交产品的功能,但是主程序非常的轻量简约,按需配置和安装扩展。不需要的功能,不会出现在你的面前干扰你的使用,你需要的功能,可以后台使用,也可以前台所见即所得的使用,甚至可以脱离主程序独立使用。

支持跨平台

无论是 Web 网站,还是小程序、快应用,或者是 iOS、Android 等客户端,均可支持管理控制和多形态内容的跨平台运行,实现统一、通用和标准的一体化服务。

支持多语言

从数据流层面支持多语言,无需修改主程序、插件、客户端,就可以无限新增各种语言。支持 187 种语言,239 个国家/地区(数据策略符合全球各地区的法律法规),只需要后台简单配置就可实现任意语言和时区的支持。

支持选装引擎和模板

网站引擎和视图模板分别可以单独选装和二次开发,并且原生支持多语言 SEO 配置,无论在哪种语言环境里运行或者切换,都无需担心搜索引擎收录问题。运行部署也可以非常的灵活,可以选择集成部署或者像 App 那样独立部署,甚至支持部署多个相同引擎或者不同引擎的站点,可实现一套数据在多种功能形式上差异化运营。

灵动的技术架构

主程序不会牵制任何个性化的需求,一切以运营为导向,基于业务需求可以灵活修改。没有固化的主程序,功能也不受制于任何引擎,不仅使用和二次开发非常灵活方便,还不用担心影响主程序,甚至主程序升级也不会覆盖或影响到你的定制功能。让你使用过程中一直专注自己的运营方向,不用担心自己的改动会影响以后的升级。

平级菜单模式

用户感知一款产品的功能(空间感),并不取决于 URL,主要来源于 UE 和 UI 层面(面包屑导航),因此产品采用了平级菜单模式,任何一个页面都不限父级或者自己当父级做一级页面。在菜单层面,没有了层级区分,完全由你使用的客户端决定,配置更方便、定制更灵活。

后端命名控制

用户感知一款产品的服务(体验感),并不取决于技术逻辑,而是来源于功能点命名,因此产品的任何功能点均可在后台自定义名称。从用户资料内容到互动交互行为等等,你想到的任何功能点和描述点,都可以自定义命名(支持多语言),通过命名塑造用户对产品的认知(无需修改主程序、插件、客户端),实现各种运营场景。

公开和私有模式

站点运行模式可公开可私有,私有模式可以打造自己的秘密小圈子,用户加入方式也多种多样,邀请、付费、问答等等方式均可随性支持。如果想要扩展独立的玩法,产品从数据库到接口层面还预留了 More Json 扩展,让你随心定义新参数,结合匹配的客户端,你可以实现目前已知的任何社交产品的功能。

产品模式形态多种多样

产品架构和内容形态上支持已知的任何社交产品的功能,包括但不局限于 Blog、CMS、BBS、Wiki、SNS、榜单等等模式,可以实现 Facebook、Twitter、Instagram、Tumblr、领英、知乎、豆瓣、即刻、雪球、懂车帝、猫眼、Soul、TapTap、小红书、知识星球等等形式。

用户功能可扩展

支持多用户、多角色、多图标、多色彩、多分值、匿名、头像挂件、钱包等等可扩展的用户功能,开启后可以全员使用,也可以指定角色使用。多用户和多角色可以用于马甲、子品牌、助理等用户场景;多图标可以用于勋章、徽章、身份等级、互动成就、用户状态等展览图标场景,并且图标还支持绑定功能,可用于商品橱窗、秘密树洞、向我提问等功能图标场景。

内容形态可灵活扩展

得益于数据流插件机制,通过安装编辑器插件,你可以实现多种内容形态,比如投票、问答、语音、商品、悬赏、辩论、活动、直播、书影音、互动游戏(例:我画你猜)、付费阅读、密码阅读、指定用户或用户角色阅读等等内容形式。

高度组件化

前后端分离、动静态分离,支持任何组件独立部署,比如注册、登录、发布、编辑器、个人中心、管理后台等等模块均可独立部署或者集成在现有主程序中,并且支持绑定自定义域名。高度灵活的架构,让你可以随心选配自己喜欢的功能,甚至你可以个性化定制管理后台(后台都可以选装其他方案)。高度组件化不仅能让功能扩展更丰富,也能阻止广告机器人的入侵,因为部署方式灵活,入口也就非标准化,这让关键性操作的地址更具有随机性和不规律,使机器人无从入手。

支持跨语言

如果你的现有产品想要实现社交功能,何必“重造轮子”再开发,直接集成 Fresns 产品,不仅节约大量时间成本,还有现成的众多扩展。另外,产品在数据结构规划时就考虑了跨语言的数据流转逻辑,所以将来你发展壮大,想要换编程语言开发,或者多种编程语言混合运行等等,产品从底层上就已经支持,无论你发展多大,都不用担心后顾之忧。

支持外载算法

如果你希望有个性化的数据列表,可以自行开发或者安装相应的算法插件,让数据输出更个性化。比如图片、视频、商品、文档等等各类内容,如果需要输出符合用户喜好的结果,不仅需要构建用户喜好画像,还对检索引擎有更高的要求。当主程序满足不了你的需求时,你可以外载指定的插件提供支持,而这一切的操作,都不需要修改主程序、插件、客户端。

支持数据流订阅

插件可订阅数据流转动态,无论客户端是 Web 还是 App,都可实现数据流层面的功能扩展,比如用户发表了内容或者上传了文件,插件将收到订阅通知并被唤醒,可执行内容安全性检查、待审核通知管理员或者随机奖励等各种功能行为。

命令字框架设计思路

基于大型服务系统的 RPC 思路,设计了独创性的「命令字」框架,通过命令字实现网络通信编程模型,减少处理网络数据的复杂度,提升主程序和插件机制的灵活性,让跨业务跨插件间的交互更方便。从后续的框架扩展来看,单体框架可以支撑多插件,同时后续也能支撑多系统多插件模式,并能以微服务的模式实现系统之间的分布式调用。命令字不仅通信灵活,升级也更方便,当主程序业务或数据库发生变动时,无需插件联动升级,甚至跨编程语言或者 SaaS 运行的时候,也能兼容使用。

目录结构

php

fresns/ // 主程序根目录

├── app/ // 主程功能目录

├── bootstrap/ // 引导程序目录

├── config/ // 配置文件目录

├── database/ // 数据文件目录

├── plugins/ // 插件目录

├── themes/ // 主题目录

├── public/ // 网站根目录

│ ├── assets/ // 插件和主题静态文件

│ ├── static/ // 主程序内置静态文件

│ ├── index.php // 网站入口文件

│ ├── status.json // 客户端状态配置文件

│ ├── favicon.ico // 站点 ico 图标

│ └── robots.txt // 搜索引擎 Robots 协议

├── resources/ // 框架资源目录

├── storage/ // 框架存储目录

├── vendor/ // 扩展依赖项目录

├── .env // 配置文件(安装完成后生成)

├── artisan // 框架命令行接口

├── compose.json // 依赖项配置信息

├── compose.lock // 依赖项安装信息

├── fresns.json // 主程序信息

├── install.lock // 安装锁定文件(有该文件后,禁止再执行安装)

└── LICENSE // 版权文件

前台演示图如下:

后台演示图暂时没有

官方地址为:https://fresns.cn/

最新文章