The Incode Platform provides a number of modules for use with the Apache Isis framework. The platform also provides a "quickstart" app which can be used to quickly set up your own pre-configured applications.

Quickstart

The quickstart app is a Maven archetype intended to be used as a starting point for new applications.

mvn archetype:generate  \
    -D archetypeGroupId=org.incode.platform.archetype \
    -D archetypeArtifactId=quickstart-archetype \
    -D archetypeVersion=1.15.0.2 \
    -D groupId=com.mycompany \
    -D artifactId=myapp \
    -D version=1.0-SNAPSHOT \
    -B

Like the Apache Isis framework’s own simpleapp archetype, the application provides a SimpleObject to adapt and copy, along with supporting unit tests, integration tests and BDD (cucumber) specs.

The application generated from the archetype is also preconfigured with the dependencies for all of the modules available in the Incode Platform, with auditing, command profiling, message publishing, security, flywaydb, quartz scheduler and (feature) togglz enabled by default. The application also configures the Jolokia servlet to allow consoles such as hawt.io to monitor the internal state of the webapp.

The generated application also includes example code to:

  • bootstrap a Spring Framework context alongside the Apache Isis framework.

    This is configured to host an embedded Apache Camel instance to consume published messages.

  • demonstrate usage of the various modules within the Incode Platform.

These can be easily included or excluded just by commenting in/out small sections of code.

Modules

Select the modules you need and use them "out of the box", or fork the repo and use the source code as a starting point to meet your own requirements. Most modules are independent of others, with the README for each explaining how to configure your application to use it.

The modules fall into six broad categories, summarised in the table below:

Libraries Generic Subdomains SPI
Implementations
Wicket Components Metamodel Facets Extensions