This site catalogs a number of modules for Apache Isis for you to use
either "out of the box", or as a starting point to modify and adapt
to your own requirements. Each add-on has its own repo. All add-ons use the
|incode-module-alias||Allow multiple aliases to be created for Aliasable objects, eg to hold external / alternate keys.|
|incode-module-classification||A module for Apache Isis for classifying (arbitrary) domain objects according to a predefined set of categorizations.|
|incode-module-commchannel||A module for Apache Isis for attaching communication channel objects to other (arbitrary) domain objects.|
|incode-module-note||A module for Apache Isis for attaching note objects to other (arbitrary) domain objects.|
'WIP' indicates the add-on is still work-in-progress and hasn't yet been released.
All add-ons are released as a Maven artifact into the
Maven central repo; just add the relevant dependencies to your
pom.xml, and (where required) register new domain services either using an
AppManifest#getModules() or in Isis'
isis.properties configuration files.
The README for each add-on contains full details
on how to do this.
Alternatively, if you do need to modify/adapt the provided functionality, then fork the entire repo. This way you also have fixtures and tests to ensure that your changes are properly tested.
incode-module-xxx modules have the following structure:
app- demo app's app manifest
dom- domain object module (released to Maven central)
fixture- demo app fixtures
integtests- demo app's integration tests
webapp- demo app's webapp
If you fork an add-on and think others would benefit from your changes, please raise a pull request so that we can review and fold those changes back into the original.