1 个不稳定版本
0.1.1 | 2022年9月20日 |
---|
#1431 in 数据库接口
425KB
326 行
TiddlyWiki服务器
这是一个为TiddlyWiki提供的Web服务器。它使用TiddlyWiki的Web服务器API将tiddlers保存到[SQLite数据库]中。它应该包含一个略微修改后的空TiddlyWiki,其中包括额外的tiddler存储(用于保存tiddlers)和TiddlyWeb插件(这是使用Web服务器API所必需的)。
动机
TiddlyWiki 5有一个基于[NodeJS的Web服务器],该服务器重新使用了大部分前端JavaScript以实现最大兼容性。然而,这个服务器需要大约70MB的内存才能启动,并且很容易消耗100MB或更多。这对于在工作站上运行来说是不错的,但是便宜的低端VPS很快就会变得拥挤。
在基本的基准测试中,看起来tiddly-wiki-server
大约使用了10MB的内存(没有任何优化),这我觉得更容易管理。
设置
为了创建由这个服务器支持的TiddlyWiki
- 在您的服务器上构建或安装可执行文件(例如,通过检出此存储库并运行
cargo install --path .
)。 - 设置您要运行服务器的目录:a. 将
empty.html.template
文件复制到该目录。b. 创建一个files/
文件夹以存放[静态文件]。 - 运行
tiddly-wiki-server
。
与TiddlyWiki的差异
与可以从tiddlywiki.com/empty.html下载的空wiki相比,这个项目提供的服务器初始页面有一些改动。
- 有TiddlyWeb插件以允许TiddlyWiki将数据保存到服务器,并且
- 您输入或导入的任何数据。
- 没有为禁用JavaScript的浏览器提供
noscript
部分(这被认为是一个错误)
它是按照以下程序创建的
- 从tiddlywiki.com/empty.html下载空TiddlyWiki
- 通过插件库添加 TiddlyWeb 插件。
- 在 HTML 文档的末尾添加一个
script
元素,并使用以下内容:
类="tiddlywiki-tiddler-store"
类型="application/json
- 内容如下:
@@TIDDLY-WIKI-SERVER-EXTRA-TIDDLERS-@@N41yzvgnloEcoiY0so8e2dlri4cbYopzw7D5K4XRO9I@@
服务器将替换 script
标签的内容为保存的 tiddlers。由于 tiddlers 可以包含各种编程和/或标记语言中的转义(有时是两次转义)代码,因此创建一个单独的 tiddler 存储库比动态修改核心 TiddlyWiki tiddlers 要容易得多。
贡献
目前,最宝贵的贡献方式是测试:尝试使用它设置一个 TiddlyWiki,看看它是否按预期运行。该服务器旨在与 NodeJS 服务器具有功能一致性;任何差异都可能是潜在的错误,我将非常感谢有人报告这些错误!
行为准则
贡献者应遵守贡献者承诺。
依赖关系
~36MB
~661K SLoC