Files
yovision/Sense/README.md
T

2.0 KiB

Sense

Sense is the independently deployable intelligent NVR and video-sensing management product in YoVision. It uses Go 1.26.5, PostgreSQL, Vue 3 and Element Plus. Brain and Bell are not required for startup or smoke tests.

Toolchain

Use the exact versions from the repository root goadmin-baseline.json:

  • Go 1.26.5
  • Node.js 22.22.1
  • pnpm 9.15.1

The repositories under D:\github\goadmin are read-only references. Do not develop Sense inside them.

$env:PATH = 'C:\Users\ila20\AppData\Local\Temp\yovision-tools\go1.26.5\go\bin;' + $env:PATH
powershell -ExecutionPolicy Bypass -File .\Sense\scripts\bootstrap\check-toolchain.ps1

Backend

Production/default startup requires an independent PostgreSQL URL. No default password or signing secret is provided.

cd Sense\server
$env:SENSE_DATABASE_MODE = 'postgres'
$env:SENSE_DATABASE_URL = '<provided outside the repository>'
go run .

For an isolated smoke test only:

powershell -ExecutionPolicy Bypass -File .\Sense\scripts\bootstrap\smoke.ps1

Health endpoints are GET /healthz and GET /readyz. Upstream demo and code generation routes are deliberately not registered.

Frontend

cd Sense\ui
corepack pnpm@9.15.1 install --frozen-lockfile
corepack pnpm@9.15.1 lint
corepack pnpm@9.15.1 build

The frontend automatically discovers project-local route and store modules. Feature tickets add one route module without exposing unrelated GoAdmin demo pages.

Windows package

With the frozen Go toolchain first in PATH, build the backend, frontend and ZIP archive with one command from the repository root:

cmd /c .\Sense\scripts\package-windows.bat

The ignored local artifact is Sense\dist\sense-windows-amd64.zip. It contains the Windows amd64 server, compiled UI, empty example configuration, upstream licenses, a start script and an operations note. Run start-sense.bat demo only for a temporary local preview; production startup requires externally supplied PostgreSQL and secret environment variables.