updated forum README with auto-discovery

This commit is contained in:
lichenblankie 2026-06-05 00:55:34 +00:00
parent 46cd28ba54
commit d29ff82fb1
4 changed files with 21 additions and 3 deletions

11
.runner Normal file
View file

@ -0,0 +1,11 @@
{
"WARNING": "This file is automatically generated by forgejo-runner. Do not edit it manually unless you know what you are doing. Removing this file will cause act runner to re-register as a new runner.",
"id": 14,
"uuid": "2f3252bd-5f69-4d3c-8f77-8b54caf784af",
"name": "nixos-runner",
"token": "993ebcbb295c7c58ac35fd5c2ec07cc752c99152",
"address": "https://git.derickphan.com",
"labels": [
"ubuntu-latest:docker"
]
}

View file

@ -194,9 +194,13 @@ Enable it on the `/style` page under "Forum". A "Forum" link will appear in the
### How it works
- Threads and posts are stored in `~/.tinyweb/forum.db` (separate from your search index)
- Instances sync forum content over Reticulum every 5 minutes
- Instances are discovered automatically via mesh announces — no manual setup needed
- Sync is manual by default: click "sync now" on the forum page. Auto-sync every 5 minutes is optional (toggle on moderation page)
- At scale, sync uses epidemic gossip: 20 random peers per cycle, converging globally within ~O(log N) cycles
- Authors are identified by a short pseudonymous identity hash (no accounts, no sign-up)
- Moderation is local: block authors, mute threads, keyword filters, and gossip block lists with peers
- Auto-discovery can be disabled in the moderation page
- Threads are auto-pruned after 30 days (configurable, or set to 0 to keep everything)
- Moderation is local: block authors, mute threads, keyword filters, and gossip block lists with peers (auto-block after 3 peer reports)
For full feature docs, see the [tinyweb-forum README](https://git.derickphan.com/lichenblankie/tinyweb-forum).
@ -225,6 +229,7 @@ Other hardening measures:
- **XSS escaping** — All user-supplied content is HTML-escaped before rendering
- **Bookmark authentication** — The bookmarklet endpoint requires a secret token
- **Identity file protection** — The Reticulum identity key is restricted to owner-only permissions (0600)
- **Forum caveats** — See [tinyweb-forum Security](https://git.derickphan.com/lichenblankie/tinyweb-forum#security) for forum-specific risks (voluntary retractions, block gossip manipulation, no rate limiting)
## Maintenance

View file

@ -931,7 +931,7 @@ def handle_style_form(msg=""):
f"<small>Saves ~50% on storage for embeddings. Slight quality reduction at large scale.</small><br><br>"
f'<a href="/reindex">manage semantic index</a><br><br>'
f"</div>"
{forum_section}
f"{forum_section}"
f"<h2>custom html</h2>"
f"<p>Edit the full page template. Use <code>{esc('{{content}}')}</code> "
f"where page content should appear.</p>"

2
start.sh Executable file
View file

@ -0,0 +1,2 @@
#!/bin/sh
exec /nix/store/vhgmnrmvvfdiw0kc2xz8px7rvg60lszc-python3-3.13.12-env/bin/python /home/lichenblankie/apps/tinyweb/app.py --bind 0.0.0.0