ALLPLAN Plugin Hub is the index of ALLPLAN plugins available for the ALLPLAN users to download and install.
Each plugin has an entry in the allplan-extensions.json file, e.g. like this:
{
"uuid": "9c2f32ad-f2e5-4bcd-b586-c220a00a64e5",
"name": "Example Plugin",
"developer": "example-developer",
"description": "Lorem ipsum dolor sit amet",
"github": {
"owner": "john-nonexistent",
"repo": "example-plugin"
}
}
Additionally, a plugin must have a GitHub repository, which:
- is public
- has at least one release
- an
.allep
file is attached to this release
This is enough for the plugin to appear in the plugin manager of ALLPLAN. The users can download and install the plugin. Also, they can check if there are new releases available and easily update the plugin.
-
Prepare a GitHub repo to host your plugin.
-
Prepare your the
.allep
package with you plugin according to the documentation -
Create a release and attach the
.allep
file to it. The tag you use to create the release must be the version of your plugin, e.g.v1.2.3
.Important: Make sure, the version specified in your install-config.yaml file matches the tag name!
-
Fork this repo
-
Switch on the appropriate branch. If you want your plugin to be available in ALLPLAN 2026, switch to branch 2026
-
Modify the file allplan-extensions.json to include following information for your plugin:
{ "uuid": "9c2f32ad-f2e5-4bcd-b586-c220a00a64e5", "name": "Example Plugin", "developer": "example-developer", "description": "Lorem ipsum dolor sit amet", "github": { "owner": "john-nonexistent", "repo": "example-plugin" }, "compatibility": ">=2.0.0" }
uuid
: Version 4 UUID of your plugin. Must be identical with the one in install-config.yaml!name
: Use a user-friendly name for your plugin.developer
: your developer id registered in theplugin-developers.json
description
: A one-line description of your plugincompatibility
: OPTIONAL If your plugin has multiple versions, but only some of them are compatible with the ALLPLAN version, which you are registering the plugin for, specify the compatibility specifier. It should match only the versions of your plugin, that are compatible. E.g. if your plugin works with the current ALLPLAN version only since major release 2.0.0, speficify>=2.0
. The specifiers are the same as in the requirements.txt of a python project.
-
If you're adding a plugin for the first time, add an entry also to the plugin-developers.json with information about your organization:
{ "id": "your-developer-id", "name": "Example Organization", "address": { "street": "123 Example Street", "city": "Example City", "zip": "12345", "country": "Example Country" }, "homepage": "https://www.example.com", "support": { "email": "[email protected]", "languages": [ "eng", "spa" ] }, "github": "https://github.com/example/" }
id
: The unique id of your organization. A slugified, url-friendly name. Use small-caps and-
as separator.support
: provide the contact data, where the users should reach out in case of problemsgithub
,homepage
: these fields are optional.
After we review and approve your pull request, your plugin will show up automatically in the Plugin Manager of ALLPLAN. Want to ship an update? Just create a new release on your GitHub repo.