Visible
SVG badges
Deterministic, cacheable badges generated from presets or structured parameters.
Open source · Self-hostable
A stateless Go service for SVG badges, human-readable declaration pages and JSON-LD. Self-hostable, internationalised and built for highly available deployments.
https://ai.trustednet.eu/badge/research.svg
{
"@type": "AIUsageDeclaration",
"schemaVersion": "1.1",
"assurance": "selfDeclared"
}
Feature set
Visible notices, readable summaries and machine-readable declarations in one lightweight application.
Visible
Deterministic, cacheable badges generated from presets or structured parameters.
Readable
Human-readable pages explain AI contribution, activities, review and responsibility.
Machine-readable
Link, validate or include manifests in build and CMS workflows.
International
German, English, French, Spanish, Italian, Dutch, Portuguese and Polish.
Offline
Ed25519 licences are verified locally without an external licensing service.
Scalable
Stateless replicas, readiness checks, HPA, Swarm replicas and CDN-friendly caching.
Privacy-first
No cookies, sessions, external assets or mandatory analytics.
Deployment
Every deployment uses the same Go binary and can run without external services.
cp .env.example .env
# Adjust BASE_URL and PUBLIC_NAME in .env
docker compose up -d --build
curl -fsS http://localhost:8080/readyz
docker build -t ai-disclosure-standard:1.6.2 .
docker run -d --name ai-disclosure \
-p 8080:8080 \
-e BASE_URL=https://ai.example.org \
-e PUBLIC_NAME="AI Usage Disclosure" \
--read-only --tmpfs /tmp \
ai-disclosure-standard:1.6.2
# Image, Domain und TLS-Secret in deploy/kubernetes.yaml ersetzen
kubectl create secret generic ai-disclosure-license \
--from-literal=token='...'
kubectl apply -f deploy/kubernetes.yaml
kubectl rollout status deployment/ai-disclosure
docker swarm init
export LICENSE_TOKEN='...'
export LICENSE_MODE='offline'
docker stack deploy -c deploy/swarm-stack.yaml ai-disclosure
go test ./...
go build -trimpath -o bin/server ./cmd/server
BASE_URL=http://localhost:8080 \
PUBLIC_NAME="AI Usage Disclosure" \
./bin/server
| Variable | Default | Purpose |
|---|---|---|
LISTEN_ADDRESS | :8080 | HTTP server bind address. |
BASE_URL | http://localhost:8080 | Public base URL without a trailing slash. |
PUBLIC_NAME | AI Usage Disclosure | Product or site title. |
CONTACT_URL | https://ai.trustednet.eu | Optional external contact or project page. |
DEFAULT_LANGUAGE | de | Fallback output language. |
LICENSE_TOKEN | - | Vendor-signed licence token. |
LICENSE_MODE | offline | Minimum mode: offline, hybrid or online. |
LICENSE_SERVER_URL | - | Optional central verification server for hybrid and online mode. |
FAQ
Yes. Badge and manifest responses are deterministic and include ETag and cache-control headers.
No. The service provides technical declarations and integrations; it does not replace legal review or editorial responsibility.
The generator works without registration, cookies or external resources.