- Dockerfile: builds from Sources/ context, installs stegasoo + verisoo + soosef
- docker-compose.yml: single service with persistent volume at /root/.soosef
- entrypoint.sh: auto-init on first run, gunicorn with 2 workers
Build: cd soosef/docker && sudo docker compose build
Run: sudo docker compose up -d
Port 35811, HTTPS disabled by default (reverse proxy expected)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New file stego_routes.py:
- register_stego_routes() mounts all encode/decode routes on the Flask app
- Async encode with ThreadPoolExecutor + progress polling
- Subprocess isolation for crash-safe stegasoo operations
- Image + audio encode/decode with full validation
- Encode result display with download
- Tools API routes (capacity, EXIF, rotate, compress, convert)
- About page with crypto documentation
Real templates (replacing stubs):
- encode.html (889 lines): full form with carrier upload, passphrase,
PIN, RSA key, embed mode selection, async progress bar
- decode.html (681 lines): decode form with credential inputs
- encode_result.html (242 lines): result display with download
- about.html (602 lines): security documentation
All routes verified working with auth flow.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Copy Bootstrap 5, Bootstrap Icons, and html5-qrcode from stegasoo
- Fix stegasoo CLI import (cli group, not main wrapper)
- Add .gitignore and README.md
- Verified: soosef init, soosef serve, all routes, key export/import all work
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>