Welcome to Valtimo
What is Valtimo?
Valtimo is the low-code platform for Business Process Automation. Our goal is to make implementing business process automation and case management easy.
What does the Valtimo platform contain?
- Valtimo consists of two services:
- A Spring Boot Java/Kotlin backend
- An Angular frontend
- Valtimo depends on two services:
- Keycloak as an identity and access provider
- A database (default is PostgreSQL)
What are the 'Valtimo backend libraries'?
This repository contains:
- A collection of Java/Kotlin libraries that together form the Valtimo backend.
- The
app:gzac
module, containing a Spring Boot application, used for library development.
Starting the Valtimo platform
Starting up the Valtimo platform required three steps:
- Starting the supporting Docker containers: Keycloak and PostgreSQL. Instructions for starting the supporting services can be found here.
- Starting the Valtimo backend. Instructions can be found here.
- Starting the Valtimo frontend. Instructions can be found here
Starting the Valtimo backend libraries from source
Prerequisites
Start Docker containers for supporting services
- Make sure Docker is running.
- Run the following command to start the supporting services:
./gradlew :app:gzac:composeUpGzac
.
Start Application
Run the following command to start the Spring Boot application: ./gradlew :app:gzac:bootRun
.
Test users
Keycloak management can be accessed on http://localhost:8081 with the default credentials of username admin and password admin.
Keycloak comes preconfigured with the following users.
Name | Role | Username | Password |
---|
James Vance | ROLE_USER | user | user |
Asha Miller | ROLE_ADMIN | admin | admin |
Morgan Finch | ROLE_DEVELOPER | developer | developer |
Code quality
Running tests
- Run the following command to run the unit tests:
./gradlew test
. - Run the following command to run the integration tests using a PostgreSQL database:
./gradlew integrationTestingPostgresql
. - Run the following command to run the integration tests using a MySQL database:
./gradlew integrationTestingMysql
. - Run the following command to run the security tests:
./gradlew securityTesting
.
Contributing
Contributions are welcome! To get you in the right direction, please consult the Valtimo documentation for guidelines on how to contribute.
Code guidelines
For contributing code, please refer to the coding guidelines.
Branching strategy
For more information on what branches to create while working in this project, please refer
to this page.
License
The source files in this repo are licensed under the EUPL 1.2.
If you have any questions about the use of this codebase in a larger work: please reach out through the Valtimo website.
More information