Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端

图片[1] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
图源 Cinny 官网|官方 demoGitHub 地址

引言

常见的 Matrix 客户端包括:

Element (最为熟知和常用)

  • 跨平台支持:Element 提供了适用于多个平台的客户端,包括桌面、移动和Web版本。
  • 功能丰富:Element 提供了广泛的功能,包括端到端加密、音视频通话、文件共享、插件支持等。
  • 社区支持:Element 是 Matrix 社区内最受欢迎的客户端之一,拥有大量用户和支持。

Cinny (新一代 Matrix 客户端,UI 设计简洁现代):

  • 轻量级:Cinny 是一个轻量级的 Matrix 客户端,适用于那些喜欢简洁界面的用户。
  • 无需安装:通过浏览器即可使用 Cinny。
  • 不足:发布日期较新,因此功能不如 Element 全面,例如 Cinny 暂不支持音视频通话;另外,当前 Cinny 仅有 Web 端,无 Android 和 iOS 应用;
图片[2] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
图源 Cinny 官网|Cinny 的特性

为什么选择 Cinny 作为客户端:

  • 部署简单。只需要把 Cinny 编译后的源码上传到网站根目录就可以使用了。
  • UI 好看。设计语言很统一,界面简洁优雅。

Cinny 的 UI 是本人尤其青睐它的原因。

1. 下载 Cinny 源码

我们打开 Cinny 的 GitHub 项目地址:https://github.com/cinnyapp/cinny ,下载最新的 release 包。

下载后,我们将其上传到网站的根目录,并手动解压。你将得到一些文件和文件夹:

图片[3] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
 

现在,只要你的 nginx 配置正确,你已经可以通过域名访问 Cinny 客户端了。

图片[4] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
Cinny 客户端的登录界面

2. Cinny 客户端的配置

2.1 修改服务器列表

我们需要将自己的服务器地址添加到 Cinny 配置文件中,以便用户可以在下拉列表中选择。

图片[5] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
默认情况下,下拉列表里只有 5 个服务器。

我们编辑 config.json 文件:

图片[6] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈

打开 config.json 文件:

图片[7] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈

其中,"allowCustomHomeservers" 用于控制是否允许用户手动输入服务端域名。为避免用户错误配置,我们这里保持 false 不变。

"homeserverList" 里可以包含多个服务端的域名,要注意缩进和逗号分隔。

以下是原版 config.json 文件,建议保存备用:

{
  "defaultHomeserver": 3,
  "homeserverList": [
    "converser.eu",
    "envs.net",
    "halogen.city",
    "matrix.org",
    "mozilla.org"
  ],
  "allowCustomHomeservers": true
}

以下是一个示例配置文件,假设仅允许用户选择 server.xxx.com 登录,且不允许用户自主输入服务端地址:

{
  "defaultHomeserver": 0, #默认服务器
  "homeserverList": [
    "<server.xxx.com 填入你的服务端域名>"
    
  ],
  "allowCustomHomeservers": false #是否允许用户手动输入域名
}

完成编辑后,保存并退出。

现在我们回到浏览器,刷新客户端网页。若刚才的配置无误,你将能够选择自己的 server.xxx.com 域名作为服务端地址。

注意:可能的坑

修改完了 config.json 文件,回到客户端网页却还是只有原来的 “matrix.org” 等五个地址可供选择?

打开浏览器 F12 开发人员工具,先禁用一下浏览器缓存就好了:

图片[8] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
把 “禁用缓存” 勾选上,然后刷新网页

3. 完成

至此,已完成 Cinny 客户端的部署。Cinny 美中不足有两点:

  • 功能仍需完善

相较于老牌客户端 Element,Cinny 缺失了很多功能,例如没有音视频通话、没有重置密码入口

其它的一些小功能也没有,比如 in-chat key verification ,不过这倒不影响核心功能

  • 一些细节有问题

移动端界面仍需改善,层级逻辑有问题

所有使用 webkit 的 iOS 浏览器(Safari 等),一旦焦点定位到输入框,浏览器就会自动放大网页。查了一些资料后发现,这是因为 Cinny 默认的输入框文本大小小于 12px ,触发了 iOS 的一种缩放机制

4. 后续

其实现在你已经可以正常登录使用了,但你可以进行一些额外设置,用起来更舒服。

4.1 Cinny 汉化 (可选)

Cinny 不提供多语言设置。如果想汉化 Cinny 只能采取一种愚蠢且费力的方法。请打开 网站根目录/assets/index-xxxxxxxx.json 文件,自行将其中的英文部分汉化成中文。(没错,这文件非常长)

注意:可能的坑

  1. 提前备份原版 index-xxxxxxxx.json 文件
  2. 建议每次只修改一小部分,然后回到客户端刷新网页看看效果,避免出错

唉,完成全部文本的汉化是一个大工程,加上本人对 Matrix 一些功能表述的不熟悉,花了我好几天的时间 ಥ_ಥ

这是效果展示:

图片[9] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
汉化后的设置界面
图片[10] - Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端 - 白鱼小栈
汉化后的聊天界面

4.2 自定义品牌 (可选)

如果你希望将 Cinny 用于生产环境,并把默认的大黑鸟 logo 去掉,那么你可以打开 /assets 文件夹,将里面的图标换成你自己的。

换的时候注意每个图标的尺寸大小。可通过 某些在线工具 批量生成多尺寸 logo 图像。

4.3 第三方 OIDC 登录 (可选)

如果你还没有配置第三方账号(也就是 OIDC (OpenID Connect) 登录),可以参阅这篇文章:https://www.baiyuyu.com/304.html

全文完!总体而言,Cinny 还是一款比较优秀的 Matrix 客户端,希望能够被继续完善。

2023/12 补充:

注:本人部署时使用的是 v2.2.4 版本。现在版本号好像来到了 v3.2.0,应该新增了不少功能

2024/2 补充:

为能够及时在移动设备上接收消息,建议搭配 Element 之类的 App 使用,毕竟你总不能一直把浏览器网页挂在后台吧


全文完

有用0阅读 915版权提示
留言 共 2 条
其实你有必要说两句
匿名的头像 - 白鱼小栈

昵称

有回复时发送邮件通知我

取消
身份 表情 图片
    • 半梦的头像 - 白鱼小栈半梦0