#social #activity-pub #platform #mastodon #protocols #server #sqlite

bin+lib enigmatick

Enigmatick是一个集成了实现ActivityPub协议的服务器(例如Mastodon)的社交媒体平台。

12个版本

0.2.7 2024年3月18日
0.2.6 2024年3月18日
0.1.3 2024年3月10日

#251 in 图像

GPL-3.0-only

8.5MB
35K SLoC

Rust 20K SLoC // 0.0% comments JavaScript 14K SLoC // 0.0% comments SQL 1.5K SLoC // 0.0% comments

包含(WOFF字体,150KB)fa-solid-900.woff2,(WOFF字体,110KB)fa-brands-400.woff2,(WOFF字体,25KB)fa-regular-400.woff2,(WOFF字体,5KB)fa-v4compatibility.woff2

Enigmatick核心

这是Enigmatick社交平台的核心组件。Enigmatick实现了与ActivityPub服务一致的功能;当一切正常运行时,用户可以关注和与Mastodon、Pleroma、Pixelfed等类似的服务上的用户互动。

安装

安装Enigmatick最简单的方法是使用cargo

cargo install enigmatick

这将安装一个sqlite服务器。要安装基于PostgreSQL的服务器,您需要使用以下命令cargo install enigmatick --no-default-features -F pg。sqlite和pg功能互斥。如果都启用,pg组件将优先。

要配置服务器,使用以下命令

enigmatick init

这将创建当前文件夹中Enigmatick服务器所需的目录结构。

enigmatick template

这将复制捆绑的.env.template文件以用于配置服务器。将其复制到.env并根据您的需要进行修改。

enigmatick migrate

如果使用SQLite,这将创建数据库。在SQLite和PostgreSQL配置中,这还将设置必要的表以支持Enigmatick。

操作

enigmatick server将使用您在.env中设置的配置从当前文件夹启动Enigmatick服务器。然后您可以使用浏览器连接到配置的端口。

目前,您需要使用单独的反向代理来处理ActivityPub正常工作所需的TLS。我计划最终将此配置直接集成到Enigmatick中。

依赖项

~72–105MB
~2M SLoC