# 4App Packages
The 4ALLPORTAL has an App Management, that provides the means to extend the 4ALLPORTAL with features, configuration, themes, behavior, workflows etc. The packages containing the code, config etc. are called "4Apps".
A 4ALLPORTAL application (4app) can be a folder as well as ZIP file with the extension .4app
.
# Structure of an application
/
├── runtime_core (4allportal-core only)
│ ├── 4allportal-core.jar
│ ├── derivateservice.jar
│ └── libs/*.jar
├── application
│ ├── html
│ │ ├── index.html
│ │ └── ...
│ ├── libs
│ └── ds-libs
├── global
├── modules
├── updates
├── docs
├── icon.[svg|png]
└── 4app.json
# 4app.json
Example:
{
"postInstallUrl": "",
"dependencies": [
{
"artifactId": "4allportal-core",
"artifactVersion": "3.2"
},
{
"artifactId": "4allportal-essensials",
"artifactVersion": "3.2"
}
],
"artifactId": "4allportal-dam",
"artifactVersion": "3.2.15",
"flavor": "",
"author": "4ALLPORTAL GmbH",
"description": {
"de-de": "",
"en-gb": ""
},
"publishDate": "$DATE",
"preInstall": {
"filesToDelete": [
"application/html/whatever.txt",
"modules/file/connectors/*"
]
}
}
artifactId
artifactVersion
postInstallUrl
dependencies
flavor
author
description
publishDate
preInstall
Here you can add instructions to be executed during the construction of
_runtime
.filesToDelete
List of files and folders to be deleted. Wildcards “?” and “” are supported, e.g.: application/html/whatever.jp?g, modules/file/connectors/