Minimal anonymous board with a Go backend, a single server-rendered page, SQLite persistence, and local Ollama-based content warning tagging.
- Anonymous text posts only
- Single reverse-chronological feed
- No accounts, comments, likes, or JavaScript
- Hashed-IP cooldown and rolling rate limit
- Ollama classifier adds CW labels before a post is published
- Sensitive posts render collapsed behind native HTML
<details>
- Start Ollama.
- Pull the model you want to use, for example:
ollama pull gemma3:12b- Set environment variables as needed:
export APP_ENV=dev
export IP_HASH_SALT='change-me'
export FORM_TOKEN_SECRET='change-me-too'
export OLLAMA_MODEL='gemma3:12b'
export PUBLIC_SOURCE_URL='https://github.com/micr0-dev/theVentBoard'- Start the server:
go run ./cmd/server- Open
http://127.0.0.1:8080.
PORTdefault8080DATABASE_PATHdefault./data/ventboard.dbOLLAMA_URLdefaulthttp://127.0.0.1:11434OLLAMA_MODELdefaultgemma3:12bPOST_MAX_CHARSdefault2000POST_COOLDOWN_SECONDSdefault60POST_RATE_LIMIT_COUNTdefault5POST_RATE_LIMIT_WINDOW_MINUTESdefault15RATE_LIMIT_HASH_ROTATION_MINUTESdefault60CLASSIFIER_TIMEOUT_SECONDSdefault20CLASSIFIER_POLL_INTERVAL_SECONDSdefault3CLASSIFIER_MAX_RETRIESdefault5FEED_LIMITdefault100IP_HASH_SALTrequired outsideAPP_ENV=devFORM_TOKEN_SECRETdefaults toIP_HASH_SALTFORM_TOKEN_MIN_AGE_SECONDSdefault3FORM_TOKEN_MAX_AGE_MINUTESdefault120PUBLIC_SOURCE_URLoptional public repo link for the homepage source-code link
GNU AGPLv3-or-later. See LICENSE
go test ./...