A12 is an Enterprise Low Code Platform developed by mgm-tp. To be able to work with it, you need access to getA12.com. You can get it by reaching out to mgm-tp.
A12 Tutorial Application is an introduction into development with A12, based on the Project Template. For more information about the Project Template and how to get started, check out the detailed documentation on getA12.
Proper environment setup is crucial for the successful build and run of this project. Please follow the steps in the environment and tools setup documentation carefully.
To wrap up, the following tools are required to build this project. Versions are maintained in ./tool-versions.json file and follow npm semver versioning patterns.
| Tool | Version | Note |
|---|---|---|
| JDK | '21' | |
| Gradle1 | '>=8.5.x <9' | |
| Node | '22.x.x' | |
| npm1 | '>=10.7.x' |
1) These tools have to be configured to use proper Artifactory. Please, follow the Artifactory access documentation to set it up.
To build the application modules:
gradle build
Assuming you went through the documentation, your environment is set up, project is prepared and the build was successful, you need to do the following to run the application:
- Project Template application
- Run the server application with the default development Spring profile and keep it running:
gradle :server:app:bootrun --args='--spring.profiles.active=dev-env'NOTE: It is normal for the server startup progress to not quite reach 100% in the terminal output. Once you see the progress indicator hit around 80% or higher without any error logs, the server is running properly.
- Run client:
- In another terminal window, move to client directory with
cd client. - Then start the webpack with
npm startand keep it running.
- In another terminal window, move to client directory with
- Run the server application with the default development Spring profile and keep it running:
- Project Template init application (for initialization and migration purposes)
WARNING: Before running the init application, make sure to stop the server application first. The init application will lock the Postgres database during initialization, and the database could become inconsistent if data is being initialized while the server is still running.
- Run the init application with the default development Spring profile:
gradle :server:init:bootrun --args='--spring.profiles.active=dev-env' - Run the init application with the 'init-data' Spring profile additionally to initialize documents based on the
import/data/requestfolder:gradle :server:init:bootrun --args='--spring.profiles.active=dev-env,init-data'
- Run the init application with the default development Spring profile:
By default, A12 Tutorial services are exposed on the following ports:
| Service | Port | Note |
|---|---|---|
| Frontend | :8081 |
|
| A12 Tutorial Server | :8082 |
|
| Postgres | :8083 |
Docker only |
Once all services are running, you can access the frontend at http://localhost:8081.
There are three test users with credentials:
admin/A12PT-admintestfor Admin roleuser1/A12PT-user1testfor User roleuser2/A12PT-user2testfor User role
Log in with one of these credentials and take a look over the content.
The mgm A12 Team
mgm technology partners GmbH • Imprint
Copyright (c) 2025 mgm technology partners GmbH
