{{MOCK_25}}
{{COMPAT_HEADING}}
{{USE_CASES_SUBTITLE}}
{{USE_CASE_1_DESC}}
{{USE_CASE_2_DESC}}
{{USE_CASE_3_DESC}}
{{WHY_SUBTITLE}}
{{FEATURE_1_DESC}}
{{FEATURE_2_DESC}}
{{FEATURE_3_DESC}}
{{FEATURE_4_DESC}}
{{FEATURE_6_DESC}}
{{FEATURE_5_DESC}}
{{COMP_SUBTITLE}}
| {{COMP_COL_FEATURE}} | KoalaSync | Teleparty |
|---|---|---|
| {{COMP_FEAT_1_NAME}} {{COMP_FEAT_1_DESC}} | ✔ {{COMP_FEAT_1_KOALA}} | ✘ {{COMP_FEAT_1_TELE}} [1] |
| {{COMP_FEAT_2_NAME}} {{COMP_FEAT_2_DESC}} | ✔ {{COMP_FEAT_2_KOALA}} | ✘ {{COMP_FEAT_2_TELE}} [2] |
| {{COMP_FEAT_3_NAME}} {{COMP_FEAT_3_DESC}} | ✔ {{COMP_FEAT_3_KOALA}} | ✘ {{COMP_FEAT_3_TELE}} [2] |
| {{COMP_FEAT_4_NAME}} {{COMP_FEAT_4_DESC}} | ✔ {{COMP_FEAT_4_KOALA}} | ✘ {{COMP_FEAT_4_TELE}} [2] |
| {{COMP_FEAT_5_NAME}} {{COMP_FEAT_5_DESC}} | ✔ {{COMP_FEAT_5_KOALA}}[3] | ✘ {{COMP_FEAT_5_TELE}} [1] |
| {{COMP_FEAT_6_NAME}} {{COMP_FEAT_6_DESC}} | ✔ {{COMP_FEAT_6_KOALA}} | ✘ {{COMP_FEAT_6_TELE}} |
{{COMP_FOOTNOTE_1}}
[1] {{COMP_FOOTNOTE_2}} teleparty.com/premium
[2] {{COMP_FOOTNOTE_3}} teleparty.com/privacy
[3] {{COMP_FOOTNOTE_4}}
{{STEP_1_DESC}}
{{STEP_2_DESC}}
{{STEP_3_DESC}}
{{SELF_SUBTITLE}}
services:
koala-sync:
image: ghcr.io/shik3i/koalasync:latest
container_name: KoalaSync
restart: always
# Access internally by proxying to container port 3000
environment:
- TZ=Europe/Berlin
- PORT=3000
- MIN_VERSION=1.0.0
- MAX_ROOMS=100
- MAX_PEERS_PER_ROOM=50
pids_limit: 2048
sync.koalastuff.net {
root * /var/www/koalasync/website/www
encode zstd gzip
# Clean URLs support (no .html required)
try_files {path} {path}.html {path}/
file_server
}
syncserver.koalastuff.net {
reverse_proxy localhost:3000
}
(security_headers) {
header {
# Enable HTTP Strict Transport Security (HSTS)
Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
# Prevent clickjacking attacks (Sameorigin)
X-Frame-Options "SAMEORIGIN"
# Prevent MIME-sniffing
X-Content-Type-Options "nosniff"
# Enable browser XSS protection
X-XSS-Protection "1; mode=block"
# Control referrer information
Referrer-Policy "strict-origin-when-cross-origin"
# Hide Caddy server stamp signature
-Server
}
}
sync.koalastuff.net {
encode zstd gzip
root * /var/www/koalasync/website/www
# Clean URLs: Resolves paths without .html in the URL
try_files {path} {path}.html {path}/
file_server
# Static Caching for high performance
@static {
file
path *.ico *.css *.js *.png *.svg *.webp *.avif
}
header @static Cache-Control "public, max-age=31536000, must-revalidate"
# Hardened Security & Permission Policies
import security_headers
header {
Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; connect-src 'self'; img-src 'self' data:; object-src 'none'; frame-ancestors 'none'; base-uri 'none'; form-action 'none';"
Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=(), usb=()"
}
}
syncserver.koalastuff.net {
import security_headers
encode zstd gzip
reverse_proxy KoalaSync:3000
}
{{FAQ_SUBTITLE}}
{{FAQ_A1}}
{{FAQ_A2}}
{{FAQ_A3}}
{{FAQ_A4}}
{{FAQ_A5}}
{{FAQ_A6}}