Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

dpp-engine

Sovereign, self-hostable Digital Product Passport infrastructure for EU compliance.

Ficha actualizada 22 sept 2026, 18:42 · upstream 22 sept 2026, 18:42 · release sin release detectada

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es dpp-engine

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

The Odal Node Engine is a runnable runtime that provides HTTP services to issue, sign, version, store, and serve EU Digital Product Passports (DPPs) on your own infrastructure. Built on dpp-core, it includes a DID:web identity service with QR/Digital Link resolution, a sandboxed Wasm plugin host for custom plugins, bulk import via CSV/XLSX, PostgreSQL persistence, Redis caching, NATS event bus, and an operational trust layer that enforces honesty through hash-chained audit logs. The engine is self-hostable at no charge (under BSL-1.1) and requires Rust 1.96+ with Docker 24+. It features a single binary that fuses multiple services under one Axum router, plus a standalone public resolver for QR/Digital Link verification.

CASOS DE USO
  • Issue and serve EU Digital Product Passports on-premise without cloud dependency
  • Store product data with full audit trails using hash-chained append-only tables
  • Verify digital links via GS1-compliant QR codes through a public resolver
  • Run compliance calculators (CO2e, repairability) directly in the node
  • Build custom plugin extensions for DPP verification and validation
  • Maintain complete sovereignty over data with no external cloud storage required
PUNTOS DESTACADOS
  • Self-hostable at no cost under BSL-1.1 license, enabling full compliance control
  • Hash-chained audit logs ensure tamper-evident history of all operations
  • Evidence dossier generation and verification via signed JWS documents
  • Single binary fuses multiple services (vault, identity, resolver, integrator) under one Axum router
  • GDPR-compliant data handling with EU-registry intent tracking and transfer-of-responsibility handshakes
PRECAUCIONES
  • Requires Rust 1.96+ runtime environment; not compatible with older toolchains
  • Single-tenant PostgreSQL design means no row-level security (RLS) is supported
  • GDPR data processing activities must be documented separately in the operator's own records
  • The resolver does not support multi-language content negotiation beyond HTML/JSON-LD/AAS
  • No native support for EU-registry export to CSV format without custom middleware
  • Wasm plugin host has a memory cap and deny-all policy that may block large payloads
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU4 vCPUrecomendación inicial
MEMORIA4 GBRAM estimada
DISCO30 GBalmacenamiento base
COMPLEJIDADhighnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Run PostgreSQL, Redis, and NATS via Docker Compose (docker/docker-compose.dev.yml) for development; use production-ready compose files for staging/prod,Set NODE_PROFILE=production to enforce trust-layer enforcement on the node binary,Configure RULESET_BUNDLE_PATH + RULESET_PUBLISHER_PUBKEY in .env for signed compliance rulesets,Use DATABASE_MIGRATE_URL with PostgreSQL migrations applied at startup if enabled,Enable NATS_URL only when using the event bus; otherwise it defaults to NoOp,Set up S3/MinIO buckets for archive storage of DPPs and audit logs as per your compliance requirements,Configure the seal provider (hosted QTSP, local development sealer, or Ghost) in .env based on your legal needs,Run tests with cargo nextest run --workspace to validate all integration points including resolver health checks

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsNode.jsRust
SERVICIOS
PostgreSQLRedisS3/MinIONATS
BASES DE DATOS
PostgreSQLRedis
PUERTOS
5432800130004222910063799101
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.