Building from Source
Building from Source
El pipeline de build oficial usa SCons como orquestador, ejecutado desde la raíz del monorepo.
Pipeline
build frontend (Vite) → build híbrido del backend → Electron + electron-builder
frontend/dist/ dist/vectora/vectora(.exe) frontend/dist-electron/El “build híbrido” compila solo el paquete del backend a C vía Nuitka (--mode=package, produciendo un .pyd), y luego usa PyInstaller para empaquetar el launcher + ese módulo compilado + las libs de Python en un único ejecutable. Compilar solo el backend (en lugar de Nuitka onefile puro) evita quedarse sin memoria al compilar dependencias gigantes (google.genai.types, LanceDB) directo a C.
Comandos
scons release # build completo + instalador nativo para el SO actualRequisitos de build
- Python 3.13 (fijado — la versión de Nuitka en uso aún no soporta 3.14)
- uv
- Node.js 24+ y
pnpm - En Windows: Visual Studio Build Tools (MSVC) + Windows SDK, para el toolchain C de Nuitka
Calidad
scons tests # suite completa (pytest + vitest)
scons coverage # misma suite, con reporte de cobertura
scons lint # ruff + ty + bandit (Python) + tsc + oxlint (TypeScript)Infraestructura Docker (no la app)
scons docker # levanta Postgres + Redis + Qdrant para el modo completo