How valtimo-platform/valtimo works
Valtimo is a low-code platform for business process automation and case management, delivered as a Spring Boot backend and Angular frontend. Its user-facing flow centers on interacting with cases and tasks; the backend also provides process/case import previews, configurable authorization, document search, and integrations for files and external document services. The README identifies Keycloak and a database as platform dependencies. Source excerpts support several internal calls, but wiring for many tree-listed capabilities was not sampled, so those branches are shown without speculative connections.
Main entry points: backend Spring Boot backend · frontend Angular frontend · DocumentenApiPreviewService.kt Document preview · ValtimoAuthorizationService.kt Authorization service
Components 23
User experience
- Angular frontend
frontend - Task list parameters
frontend/projects/valtimo/task/src/lib/services/task-list-query-param.service.ts
Casework
- Spring Boot backend
backend - Case management
backend/case - Process links
backend/process-link - Case task search
backend/process-document/src/main/kotlin/com/ritense/processdocument/service/CaseTaskListSearchService.kt - Case import preview
backend/case/src/main/kotlin/com/ritense/case/service/CaseDefinitionImportPreviewService.kt - Process import preview
backend/process-link/src/main/kotlin/com/ritense/processlink/service/ProcessDefinitionImportPreviewService.kt
Authorization
- Authorization service
backend/authorization/src/main/kotlin/com/ritense/authorization/ValtimoAuthorizationService.kt - Roles and permissions
backend/authorization/src/main/kotlin/com/ritense/authorization
Platform services
- Admin settings
backend/admin-settings/src/main/kotlin/com/ritense/adminsettings - Audit records
backend/audit/src/main/java/com/ritense/audit - Temporary resources
backend/resource/temporary-resource-storage/src/main/kotlin/com/ritense/resource/service/TemporaryResourceStorageService.kt - Temporary file store
- Resource retention
backend/resource/temporary-resource-storage/src/main/kotlin/com/ritense/resource/service/TemporaryResourceStorageDeletionService.kt
Integrations
- Document search
backend/case-opensearch/src/main/kotlin/com/ritense/document/opensearch/service/DocumentOpenSearchQueryService.kt - OpenSearch
- Document preview
backend/zgw/documenten-api-preview/src/main/kotlin/com/ritense/documentenapipreview/service/DocumentenApiPreviewService.kt - Plugin service
backend/zgw/documenten-api-preview/src/main/kotlin/com/ritense/documentenapipreview/service/DocumentenApiPreviewService.kt - Case document service
backend/zgw/documenten-api-preview/src/main/kotlin/com/ritense/documentenapipreview/service/DocumentenApiPreviewService.kt
Other components
- User
- Keycloak
- Platform database
Connections 22
- User → Angular frontend: uses
- Angular frontend → Spring Boot backend: calls APIs
- Angular frontend → Task list parameters: sets or reads
- Task list parameters → Angular frontend: navigates
- Spring Boot backend → Case management: hosts
- Spring Boot backend → Process links: hosts
- Spring Boot backend → Case task search: hosts
- Spring Boot backend → Case import preview: hosts
- Spring Boot backend → Process import preview: hosts
- Case task search → Authorization service: requests authorization
- Document search → Authorization service: gets permissions
- Document search → OpenSearch: searches
- Authorization service → Roles and permissions: reads permissions
- Spring Boot backend → Admin settings: hosts
- Spring Boot backend → Audit records: hosts
- Temporary resources → Temporary file store: writes and reads
- Resource retention → Temporary resources: uses temp directory
- Spring Boot backend → Document preview: hosts
- Document preview → Case document service: verifies association
- Document preview → Plugin service: creates plugin
- Keycloak → Spring Boot backend: identity provider
- Spring Boot backend → Platform database: persists platform data