CERBERUS IMAGE v3 - WINDOWS
=======================

EASIEST: run cerberus-setup-v3.exe from https://kraftify.net/cerberus.
It installs everything (embedded Python, libraries, weights) to your
user folder (no admin needed) and adds Start Menu shortcuts. Then open
Cerberus from the Start Menu: the mini glass app opens in its own small
window. No Python install needed, works fully offline. Stop it any time
from Start Menu > Stop Cerberus.

Needs: Windows 10 or newer, 64-bit, Microsoft Edge (for the WebView2
runtime; preinstalled on virtually every Windows 10/11 PC).

MANUAL INSTALL (this zip layout) needs Python 3.11 or newer
(https://www.python.org/downloads/, tick "Add python.exe to PATH").

MANUAL INSTALL (this zip layout)
1. Unzip this folder anywhere.
2. Copy cerberus_broad-v3.onnx next to service.py.
   Get it from https://kraftify.net/cerberus (22.6 MB).
3. Double-click windows\cerberus-app.bat. First run sets up the virtual
   environment and dependencies by itself, then opens the mini app window.

CHECK IMAGES FROM THE TERMINAL
1. Start Cerberus from the Start Menu (or windows\cerberus.bat).
   The server runs at http://127.0.0.1:5972
2. Open a second terminal (cmd or PowerShell) in the install folder.
3. Score an image:
     windows\check.bat photo.jpg
   or by hand:
     curl -X POST http://127.0.0.1:5972/check --data-binary @photo.jpg
   Answer is JSON: nsfw true/false, score, labels, per-signal scores.
   The same UI is also at http://127.0.0.1:5972 in any browser.

BUILD A STANDALONE cerberus.exe
Run in PowerShell from the install folder:
     powershell -ExecutionPolicy Bypass -File windows\build-exe.ps1
It produces dist\cerberus.exe (one file, no Python needed to run it).
Copy dist\cerberus.exe plus the .onnx weights into one folder and run:
     .\cerberus.exe

FILES
service.py, config.py   the service (single source of truth: config.py)
app\index.html          the mini glass app (served at the server root)
requirements.txt        pinned Python dependencies
scripts\verify_model.py checks the weights (name, sha256, ONNX graph)
windows\cerberus-app.bat        opens the mini app window (self-setting-up)
windows\cerberus.bat            starts the server in a terminal instead
windows\stop.bat                stops the background server
windows\check.bat               scores one image from the terminal
windows\build-exe.ps1           builds dist\cerberus.exe with PyInstaller
windows\installer.nsi           NSIS source for cerberus-setup-v3.exe
MODEL.md                model card: data, tuning, limits
README.md               full docs
LICENSE                 MIT (code; weights are a separate artifact, see MODEL.md)
