23 个稳定版本

1.4.3 2022年11月25日
1.3.5 2022年11月22日
1.1.1 2022年10月28日

#253模板引擎

MIT 许可证

50KB
1K SLoC

Rust 1K SLoC // 0.0% comments JavaScript 255 SLoC

insight

insight 是一个允许您编辑 Markdown 文章并公开托管渲染结果的 Web 服务器。

功能

  • 可自定义主页(它也是一篇文章)
  • 匿名和邮箱保护的文章(发送邮件需要简单的 DKIM/SPF 配置)
  • 基于 CSS 查询的浅色/深色主题选择
  • 磁盘上的 JSON 数据库 → 易于备份
  • 易于 Docker 化

待办事项

  • 电子邮件模板
  • 匿名帖子在配置的持续时间后自动删除

设置

  1. 安装 Rust 工具链
  2. 获取 insight
$ cargo install insight
  1. 创建 config.json
{
    "domain-name": "i.l0.pm",
    "dkim-private-key-path": "dkim.pem",
    "dkim-selector": "insight2022",
    "articles-dir": "articles",
    "mail-dir": "mail",
    "mail-username": "insight",
    "listen-address": "127.0.0.1:9090",
    "new-article": "new",
    "manage": "manage",
    "home": "home",
    "allow-creation": true
}
  1. 创建所需的目录
$ mkdir articles mail
  1. 启动服务器
$ insight -c config.json

这将接受所有 IP 地址的请求

  1. 从 Web 浏览器访问服务器以生成主页: http://localhost:9090/
  2. 编辑您的主页
  3. 保存主页编辑链接(它是秘密的)以便以后再次编辑
  4. 转到 http://localhost:9090/new 以创建其他帖子。

安全考虑

当前在渲染时从帖子中删除 HTML 标签以防止跨站脚本漏洞。我们依赖于 pulldown_cmark crate 来检测这些标签。如果您设法通过 markdown 在帖子查看器中执行任何 JS 代码,请提交一个问题,因为不应该发生这种情况。

许可证:MIT

依赖项

~20–30MB
~583K SLoC