Rust webserver for embeddable comments
Go to file
2022-10-25 18:30:54 +02:00
src Matrix send message error 2022-10-25 18:30:54 +02:00
templates Admin edit comment 2022-10-22 17:56:24 +02:00
.gitignore Initial commit 2022-10-15 15:32:57 +02:00
Cargo.lock Matrix errors, retry 2022-10-25 18:22:49 +02:00
Cargo.toml Matrix errors, retry 2022-10-25 18:22:49 +02:00
LICENSE Initial commit 2022-10-15 15:32:57 +02:00
README.md Matrix errors, retry 2022-10-25 18:22:49 +02:00
rustfmt.toml Initial commit 2022-10-15 15:32:57 +02:00

webcomment

Rust webserver for comments, that you can easily embed in a website.

Early development, not safe for production yet

Features

  • List and post comments by topic (e.g. each article in your blog is a topic)
  • Admin approval
  • Admin notification on new comment via Matrix
  • Embedded one-file webserver
  • Tera templates
  • Comment frequency limit per IP

Use

webcomment init

# This adds an admin password to the config (password are hashed)
webcomment psw

# edit ~/.config/webcomment/config.toml

webcomment start

Each topic is accessible at /t/<topic_name>.

Admin login is accessible at /admin. Once authenticated, you can see the pending comments on the topic pages.

Matrix

If enabled, a message can be sent to a Matrix room (private or public) on every new comment.

The account must have joined the room for Webcomment to be able to send messages to it.

License

CopyLeft 2022 Pascal Engélibert (why copyleft?)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, version 3 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.