updated forum README with auto-discovery
This commit is contained in:
parent
46cd28ba54
commit
d29ff82fb1
4 changed files with 21 additions and 3 deletions
11
.runner
Normal file
11
.runner
Normal 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"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -194,9 +194,13 @@ Enable it on the `/style` page under "Forum". A "Forum" link will appear in the
|
||||||
### How it works
|
### How it works
|
||||||
|
|
||||||
- Threads and posts are stored in `~/.tinyweb/forum.db` (separate from your search index)
|
- 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)
|
- 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).
|
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
|
- **XSS escaping** — All user-supplied content is HTML-escaped before rendering
|
||||||
- **Bookmark authentication** — The bookmarklet endpoint requires a secret token
|
- **Bookmark authentication** — The bookmarklet endpoint requires a secret token
|
||||||
- **Identity file protection** — The Reticulum identity key is restricted to owner-only permissions (0600)
|
- **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
|
## Maintenance
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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"<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'<a href="/reindex">manage semantic index</a><br><br>'
|
||||||
f"</div>"
|
f"</div>"
|
||||||
{forum_section}
|
f"{forum_section}"
|
||||||
f"<h2>custom html</h2>"
|
f"<h2>custom html</h2>"
|
||||||
f"<p>Edit the full page template. Use <code>{esc('{{content}}')}</code> "
|
f"<p>Edit the full page template. Use <code>{esc('{{content}}')}</code> "
|
||||||
f"where page content should appear.</p>"
|
f"where page content should appear.</p>"
|
||||||
|
|
|
||||||
2
start.sh
Executable file
2
start.sh
Executable 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
|
||||||
Loading…
Add table
Add a link
Reference in a new issue