Saltar a contenido

Desarrollo local

Necesitas Docker/Compose para el recorrido completo en contenedores. Para ejecutar procesos directamente, necesitas .NET 8 SDK, Node.js/npm y PostgreSQL. Las validaciones operativas usan Python.

Entorno completo con Compose

Desde la raíz:

docker compose up --build
Servicio URL o puerto
API http://127.0.0.1:8080
Swagger http://127.0.0.1:8080/swagger
Tablet http://localhost:3000
Documentación http://localhost:8000
PostgreSQL Puerto 5432

Este entorno usa replace_me como bearer de laboratorio y credenciales PostgreSQL de ejemplo. PostgreSQL y PDFs usan los volúmenes pgdata y storage. Detener contenedores conserva los volúmenes; eliminarlos borra datos.

En otra máquina, 127.0.0.1 es esa máquina. Para una tablet física configura una URL accesible del equipo servidor y el origen correcto de tablet en CORS; para instalación PWA utiliza HTTPS.

API sin Docker

Arranca PostgreSQL y configura las variables en la terminal. Ejemplo PowerShell desde la raíz:

$env:ASPNETCORE_ENVIRONMENT = 'Development'
$env:DATABASE_URL = 'Host=localhost;Port=5432;Database=bc_pdf_sign;Username=postgres;Password=postgres'
$env:BC_BEARER_TOKEN = 'replace_me'
$env:ENABLE_HTTPS_ONLY = 'false'
dotnet run --project backend/src/Api/Api.csproj --no-launch-profile --urls http://127.0.0.1:8080

La API aplica migraciones al arrancar. Copiar .env.example no carga sus valores en el proceso. STORAGE_ROOT es relativo al directorio de trabajo si no usas una ruta absoluta.

Para OCR fuera de Docker instala las herramientas configuradas en Configuración. La extracción de texto embebido no necesita Tesseract.

Tablet sin Docker

En otra terminal:

cd tablet
npm ci
npm run dev

Vite suele servir en http://localhost:5173; usa la URL que muestre la terminal. Configura VITE_API_BASE_URL en tablet/.env.local si la API no está en http://127.0.0.1:8080. El token se obtiene mediante activación y no debe añadirse a archivos Vite.

Las instrucciones operativas completas están en Operación de tablets.

Documentación

Desde la raíz, usando un entorno Python dedicado:

python -m venv .venv-docs
# Activa .venv-docs según tu terminal.
python -m pip install -r requirements-docs.txt
python -m mkdocs serve

Para comprobar el sitio sin publicarlo:

python -m mkdocs build --strict

docs-mkdocs/ contiene las guías navegables. docs/ contiene referencias de ingeniería y enlaces a esas guías. Mantén rutas y navegación al cambiar títulos; openapi.yaml define el contrato HTTP.

Extensión AL

La configuración y ejemplo de consumo están en Firmar desde AL. Descarga símbolos del tenant y recompila para su versión. Las fuentes no sustituyen la validación en sandbox.

Para las comprobaciones disponibles consulta Validaciones.