You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2020/02/07 10:49:28 UTC

[isis] branch master updated: ISIS-2062: setup guide

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 4c8fed2  ISIS-2062: setup guide
4c8fed2 is described below

commit 4c8fed2578306ba1622bedd2ff10789bb0425740
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Feb 7 10:43:54 2020 +0000

    ISIS-2062: setup guide
---
 antora/components/conguide/antora.yml              |   1 +
 .../conguide/modules/ROOT/pages/contributing.adoc  |   4 +-
 .../conguide/modules/documentation/nav.adoc        |   2 +
 .../modules/documentation/pages/about.adoc         |  46 ++
 .../pages/asciidoc-syntax.adoc                     |  14 +-
 .../pages/building-docs-and-website.adoc           |  38 ++
 .../Apache-Isis-code-style-cleanup.xml             |   0
 .../attachments}/Apache-Isis.importorder           |   0
 .../attachments}/Apache-code-style-formatting.xml  |   0
 .../attachments}/Apache-code-style-template.xml    |   0
 .../components/conguide/modules/eclipse/nav.adoc   |   1 +
 .../modules/eclipse/pages/about.adoc}              |  17 +-
 antora/components/conguide/modules/git/nav.adoc    |   1 +
 .../modules/git/pages/about.adoc}                  |  83 +--
 .../attachments}/Apache-Isis-importorder.xml       |   0
 .../components/conguide/modules/intellij/nav.adoc  |   1 +
 .../modules/intellij}/pages/about.adoc             |  10 +-
 .../what-is-apache-isis/screencasts-older.adoc     |   4 +-
 .../docs/modules/resources/pages/icons.adoc        |   2 +-
 antora/components/setupguide/antora.yml            |   3 +
 .../ROOT/attachments/intellij/other/.gitignore     |   1 -
 .../intellij/other/dan-settings-keymaps.jar        | Bin 2200 -> 0 bytes
 .../050-some-plugins/010-some-plugins.png          | Bin 45812 -> 0 bytes
 .../020-some-plugins-confirmation.png              | Bin 35687 -> 0 bytes
 .../intellij-idea/050-some-plugins/lombok.png      | Bin 259365 -> 0 bytes
 .../maven-helper/010-dependency-tab.png            | Bin 64588 -> 0 bytes
 .../maven-helper/020-dependency-as-tree.png        | Bin 44040 -> 0 bytes
 .../maven-helper/030-maven-run-goal.png            | Bin 91806 -> 0 bytes
 .../maven-helper/040-maven-quick-run.png           | Bin 83850 -> 0 bytes
 antora/components/setupguide/modules/ROOT/nav.adoc |   7 -
 .../setupguide/modules/ROOT/pages/about.adoc       |   4 +-
 .../pages/hints-and-tips/enabling-logging.adoc     |  38 --
 .../setupguide/modules/ROOT/pages/intellij.adoc    | 570 ---------------------
 .../ROOT/pages/working-with-many-repos.adoc        | 104 ----
 .../setupguide/modules/ROOT/partials/x.sh          |   9 -
 .../attachments}/isis-templates.xml                |   0
 .../attachments}/jmock2-templates.xml              |   0
 .../attachments}/junit4-templates.xml              |   0
 .../images}/2017-oxygen/010-lombok-locate-jar.png  | Bin
 .../020-lombok-install-into-eclipse.png            | Bin
 .../030-datanucleus-install-new-software.png       | Bin
 .../040-datanucleus-specify-repository.png         | Bin
 .../2017-oxygen/050-datanucleus-select-plugin.png  | Bin
 .../060-enable-annotation-processor.png            | Bin
 .../images}/eclipse-010-windows-preferences.png    | Bin
 .../images}/eclipse-025-project-properties.png     | Bin
 .../images}/eclipse-100-project-support.png        | Bin
 .../images}/eclipse-110-project-support.png        | Bin
 .../images}/eclipse-120-console.png                | Bin
 .../eclipse-200-enhancer-fails-duplicates.png      | Bin
 .../eclipse-210-enhancer-fails-duplicates.png      | Bin
 .../eclipse-220-enhancer-fails-duplicates.png      | Bin
 .../components/setupguide/modules/eclipse/nav.adoc |   1 +
 .../modules/{ROOT => eclipse}/pages/eclipse.adoc   |   4 +-
 .../hints-and-tips/attachments/.bash_functions     |  61 +++
 .../setupguide/modules/hints-and-tips/nav.adoc     |   1 +
 .../pages/about.adoc}                              |  12 +-
 .../partials}/datanucleus-enhancer.adoc            |   2 +-
 .../partials}/enhance-only.adoc                    |   0
 .../partials}/how-run-fixtures-on-app-startup.adoc |   0
 .../partials}/project-lombok.adoc                  |   8 +-
 .../partials/switching-between-directories.adoc    |  47 ++
 .../intellij => intellij/attachments}/.gitignore   |   0
 .../attachments}/isis-settings-file-templates.jar  | Bin
 .../images}/015-import-project/010-welcome.png     | Bin
 .../images}/015-import-project/020-import-pom.png  | Bin
 .../images}/015-import-project/030-imported.png    | Bin
 .../015-import-project/040-project-structure.png   | Bin
 .../010-settings-import-jar.png                    | Bin
 .../images}/030-import-settings/020-select-all.png | Bin
 .../images}/030-import-settings/030-restart.png    | Bin
 .../030-import-settings/040-file-templates.png     | Bin
 .../030-import-settings/050-live-templates.png     | Bin
 .../010-build-automatically.png                    | Bin
 .../020-annotation-processor.png                   | Bin
 .../010-maven-installation.png                     | Bin
 .../020-maven-configuration.png                    | Bin
 .../044-other-settings-misc/010-auto-import.png    | Bin
 .../060-troubleshooting/010-duplicate-classes.png  | Bin
 .../images}/070-advanced/002-compiler-exclude.png  | Bin
 .../images}/070-advanced/004-gradle-output.png     | Bin
 .../images}/070-advanced/005-gradle-output.png     | Bin
 .../images}/070-advanced/006-livereload-js.png     | Bin
 .../010-dcevm-list-of-found-jdk-installations.png  | Bin
 .../070-advanced/020-dcevm-once-installed.png      | Bin
 .../030-dcevm-intellij-project-structure.png       | Bin
 .../070-advanced/040-dcevm-run-configuration.png   | Bin
 .../010-maven-modules-view.png                     | Bin
 .../020-adding-another-module.png                  | Bin
 .../030-other-module-added.png                     | Bin
 .../100-maven-module-mgmt/040-ignoring-modules.png | Bin
 .../050-ignoring-modules-2.png                     | Bin
 .../100-maven-module-mgmt/060-ignored-modules.png  | Bin
 .../005-datanucleus-enhance-run-configuration.png  | Bin
 .../110-running-the-app/010-run-configuration.png  | Bin
 .../110-running-the-app/030-running-unit-tests.png | Bin
 .../040-running-unit-tests-run-configuration.png   | Bin
 .../045-running-integ-tests.png                    | Bin
 ...running-integration-tests-run-configuration.png | Bin
 .../200-project-sdk/010-file-project-structure.png | Bin
 .../images}/200-project-sdk/020-select-jdk.png     | Bin
 .../200-project-sdk/030-select-jdk-directory.png   | Bin
 .../200-project-sdk/040-set-project-level.png      | Bin
 .../200-project-sdk/050-isis-language-level-7.png  | Bin
 .../200-project-sdk/060-app-language-level-8.png   | Bin
 .../images}/250-new-project/010-new-project.png    | Bin
 .../250-new-project/020-new-project-name.png       | Bin
 .../250-new-project/030-new-project-new-window.png | Bin
 .../040-new-module-from-existing-sources.png       | Bin
 .../250-new-project/050-specify-source-folder.png  | Bin
 .../250-new-project/060-import-using-maven.png     | Bin
 .../250-new-project/070-import-module-settings.png | Bin
 .../images}/250-new-project/080-maven-profiles.png | Bin
 .../250-new-project/090-maven-coordinates.png      | Bin
 .../250-new-project/100-annotation-processing.png  | Bin
 .../images}/250-new-project/110-parameter8.png     | Bin
 .../250-new-project/120-clean-generate-sources.png | Bin
 .../010-configuring-the-compiler.png               | Bin
 .../run-debug-configuration-single-module.png      | Bin
 .../setupguide/modules/intellij/nav.adoc           |   1 +
 .../setupguide/modules/intellij/pages/about.adoc   | 189 +++++++
 .../modules/intellij/pages/hints-and-tips.adoc     | 111 ++++
 .../partials/UNUSED/coding-standards.adoc}         |  12 +-
 .../partials/UNUSED/faster-turnaround-times.adoc   | 196 +++++++
 .../intellij/partials/UNUSED/file-templates.adoc   |  37 ++
 .../partials/UNUSED/live-templates.adoc}           |  19 +-
 antora/playbooks/site-comguide.yml                 |  18 +
 antora/playbooks/site-conguide.yml                 |  18 +
 antora/playbooks/site-core.yml                     |  18 +-
 antora/playbooks/site-extensions.yml               |  18 +
 antora/playbooks/site-incubator.yml                |  18 +
 antora/playbooks/site-legacy.yml                   |  18 +
 antora/playbooks/site-mappings.yml                 |  18 +
 antora/playbooks/site-persistence.yml              |  17 +
 antora/playbooks/site-refguide.yml                 |  20 +-
 antora/playbooks/site-relnotes.yml                 |  18 +
 antora/playbooks/site-security.yml                 |  20 +
 antora/playbooks/site-setupguide.yml               |  18 +
 antora/playbooks/site-subdomains.yml               |  17 +
 antora/playbooks/site-testing.yml                  |  17 +
 antora/playbooks/site-userguide.yml                |  19 +
 antora/playbooks/site-valuetypes.yml               |  17 +
 antora/playbooks/site-vro.yml                      |  18 +
 antora/playbooks/site-vw.yml                       |  18 +
 .../main/adoc/modules/applib-ant/pages/Title.adoc  |   2 +-
 .../persistence-layer-api/IsisJdoSupport.adoc      |   2 +-
 .../ROOT/pages/configuring/persistence-xml.adoc    |   2 +-
 .../adoc/modules/starters/pages/helloworld.adoc    |   9 +-
 .../adoc/modules/starters/pages/simpleapp.adoc     |   8 +-
 .../adoc/modules/unittestsupport/pages/about.adoc  |   2 +-
 .../ROOT/pages/configuration-properties.adoc       |   4 +-
 151 files changed, 1149 insertions(+), 866 deletions(-)

diff --git a/antora/components/conguide/antora.yml b/antora/components/conguide/antora.yml
index b7979b3..42e12fb 100644
--- a/antora/components/conguide/antora.yml
+++ b/antora/components/conguide/antora.yml
@@ -4,3 +4,4 @@ version: master
 start_page: ROOT:about.adoc
 nav:
 - modules/ROOT/nav.adoc
+- modules/git/nav.adoc
diff --git a/antora/components/conguide/modules/ROOT/pages/contributing.adoc b/antora/components/conguide/modules/ROOT/pages/contributing.adoc
index 89f131b..7061ec2 100644
--- a/antora/components/conguide/modules/ROOT/pages/contributing.adoc
+++ b/antora/components/conguide/modules/ROOT/pages/contributing.adoc
@@ -139,7 +139,7 @@ git checkout master
 git pull --ff-only
 ----
 
-If the `merge` or `pull` fails, it means that you must have made commits and there have been changes meanwhile on the remote `master`'s branch. You can use `gitk --all` to confirm. If this fails, see our xref:_dg_git-cookbook.adoc#[git cookbook] page for a procedure to retrospectively sort out this situation.
+If the `merge` or `pull` fails, it means that you must have made commits and there have been changes meanwhile on the remote `master`'s branch. You can use `gitk --all` to confirm. If this fails, see our xref:setupguide:git:about.adoc[git cookbook] page for a procedure to retrospectively sort out this situation.
 
 
 
@@ -160,7 +160,7 @@ The command line prompt should also indicate you are on a branch, isolated from
 
 === Make File Changes and Commit
 
-Next, make changes to your files using the usual commands (see also our xref:setupguide:ROOT:git-cookbook.adoc[git cookbook] section):
+Next, make changes to your files using the usual commands (see also our xref:setupguide:git:about.adoc[git cookbook] section):
 
 * `git add`
 * `git mv`
diff --git a/antora/components/conguide/modules/documentation/nav.adoc b/antora/components/conguide/modules/documentation/nav.adoc
new file mode 100644
index 0000000..7e6281a
--- /dev/null
+++ b/antora/components/conguide/modules/documentation/nav.adoc
@@ -0,0 +1,2 @@
+* xref:conguide:documentation:about.adoc[Documentation]
+** xref:conguide:documentation:about.adoc[Documentation]
diff --git a/antora/components/conguide/modules/documentation/pages/about.adoc b/antora/components/conguide/modules/documentation/pages/about.adoc
new file mode 100644
index 0000000..5c4a1be
--- /dev/null
+++ b/antora/components/conguide/modules/documentation/pages/about.adoc
@@ -0,0 +1,46 @@
+= Documentation
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+
+
+Apache Isis uses link:https://antora.org/[Antora] and link:https://asciidoctor.org/[Asciidoc(tor)]:
+
+* Antora is the static website generator
+
+* _Asciidoc_ is a markup syntax and _Asciidoctor_ the tools to convert the markup into different formats.
++
+HTML is the format generated by Antora, but other outputs such as PDF are also supported.
+
+Both are open source, have an active community, and are maintained by the same company, link:https://opendevise.com/services/[OpenDevise].
+
+
+== Building Docs and Website
+
+Prerequisites:
+
+* Node LTS
+* Antora
+
+See the link:https://docs.antora.org/antora/2.2/install/install-antora/[Antora docs] for details.
+
+We also generate some Asciidoc files dynamically from other source code.
+This requires:
+
+* link:https://groovy.apache.org/download.html[Groovy 2.x]
+
+* link:https://pandoc.org/installing.html[pandoc]
+
+
+Also strongly recommended:
+
+* IntelliJ link:https://plugins.jetbrains.com/plugin/7391-asciidoc[Asciidoc plugin]
++
+TIP: even if you don't use IntelliJ as your primary IDE, it's worth using it for writing documentation - there's currently nothing as good as this plugin on any other editor platform, especially when it comes to Antora.
+
+To build the website:
+
+* use `build-site.sh`; or even better ...
+* use `preview.sh`, to build and then preview in a web browser
+
+Both scripts can be found at the root of this git repo.
+
+
diff --git a/antora/components/conguide/modules/ROOT/pages/asciidoc-syntax.adoc b/antora/components/conguide/modules/documentation/pages/asciidoc-syntax.adoc
similarity index 96%
rename from antora/components/conguide/modules/ROOT/pages/asciidoc-syntax.adoc
rename to antora/components/conguide/modules/documentation/pages/asciidoc-syntax.adoc
index e0db4bd..95e7933 100644
--- a/antora/components/conguide/modules/ROOT/pages/asciidoc-syntax.adoc
+++ b/antora/components/conguide/modules/documentation/pages/asciidoc-syntax.adoc
@@ -1,11 +1,9 @@
-[[asciidoc-syntax]]
-= Appendix: Asciidoc Syntax
+= Asciidoc Syntax
 :notice: licensed to the apache software foundation (asf) under one or more contributor license agreements. see the notice file distributed with this work for additional information regarding copyright ownership. the asf licenses this file to you under the apache license, version 2.0 (the "license"); you may not use this file except in compliance with the license. you may obtain a copy of the license at. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
 
 
-
-This appendix describes the main syntax conventions when writing Asciidoctor/Asciidoc.
+This page describes the main syntax conventions when writing Asciidoctor/Asciidoc.
 
 For more info, see:
 
@@ -881,3 +879,11 @@ Alternatively, specify the location, eg using:
 ....
 ====
 
+
+== Kroki
+
+An alternative to using plantuml etc is link:https://kroki.io/[kroki].
+This is an online service (can also be link:https://kroki.io/#install[installed] to run on-prem) which generates textual markup for any of a number of different formats (including all of plantuml, ditaa and graphviz).
+
+Getting Kroki to work with Antora is possible, but not (at the time of writing) completely smooth.
+But this should become seamless in the future.
diff --git a/antora/components/conguide/modules/documentation/pages/building-docs-and-website.adoc b/antora/components/conguide/modules/documentation/pages/building-docs-and-website.adoc
new file mode 100644
index 0000000..d0dda73
--- /dev/null
+++ b/antora/components/conguide/modules/documentation/pages/building-docs-and-website.adoc
@@ -0,0 +1,38 @@
+= Building Docs and Website
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+
+
+== Prerequisites:
+
+The prerequisites to install are:
+
+* Node LTS
+* Antora
+
+See the link:https://docs.antora.org/antora/2.2/install/install-antora/[Antora docs] for details.
+
+We also generate some Asciidoc files dynamically from other source code.
+This requires:
+
+* link:https://groovy.apache.org/download.html[Groovy 2.x]
+
+* link:https://pandoc.org/installing.html[pandoc]
+
+
+Also strongly recommended:
+
+* IntelliJ link:https://plugins.jetbrains.com/plugin/7391-asciidoc[Asciidoc plugin]
++
+TIP: even if you don't use IntelliJ as your primary IDE, it's worth using it for writing documentation - there's currently nothing as good as this plugin on any other editor platform, especially when it comes to Antora.
+
+
+== Build
+
+To build the website:
+
+* use `build-site.sh`; or even better ...
+* use `preview.sh`, to build and then preview in a web browser
+
+Both scripts can be found at the root of this git repo.
+
+
diff --git a/antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-Isis-code-style-cleanup.xml b/antora/components/conguide/modules/eclipse/attachments/Apache-Isis-code-style-cleanup.xml
similarity index 100%
rename from antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-Isis-code-style-cleanup.xml
rename to antora/components/conguide/modules/eclipse/attachments/Apache-Isis-code-style-cleanup.xml
diff --git a/antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-Isis.importorder b/antora/components/conguide/modules/eclipse/attachments/Apache-Isis.importorder
similarity index 100%
rename from antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-Isis.importorder
rename to antora/components/conguide/modules/eclipse/attachments/Apache-Isis.importorder
diff --git a/antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-code-style-formatting.xml b/antora/components/conguide/modules/eclipse/attachments/Apache-code-style-formatting.xml
similarity index 100%
rename from antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-code-style-formatting.xml
rename to antora/components/conguide/modules/eclipse/attachments/Apache-code-style-formatting.xml
diff --git a/antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-code-style-template.xml b/antora/components/conguide/modules/eclipse/attachments/Apache-code-style-template.xml
similarity index 100%
rename from antora/components/conguide/modules/ROOT/attachments/ide/eclipse/Apache-code-style-template.xml
rename to antora/components/conguide/modules/eclipse/attachments/Apache-code-style-template.xml
diff --git a/antora/components/conguide/modules/eclipse/nav.adoc b/antora/components/conguide/modules/eclipse/nav.adoc
new file mode 100644
index 0000000..827db68
--- /dev/null
+++ b/antora/components/conguide/modules/eclipse/nav.adoc
@@ -0,0 +1 @@
+* xref:conguide:eclipse:about.adoc[Eclipse]
diff --git a/antora/components/setupguide/modules/ROOT/pages/ide.adoc b/antora/components/conguide/modules/eclipse/pages/about.adoc
similarity index 63%
copy from antora/components/setupguide/modules/ROOT/pages/ide.adoc
copy to antora/components/conguide/modules/eclipse/pages/about.adoc
index 151d51e..8915015 100644
--- a/antora/components/setupguide/modules/ROOT/pages/ide.adoc
+++ b/antora/components/conguide/modules/eclipse/pages/about.adoc
@@ -1,16 +1,13 @@
-[[ide]]
-= Using an IDE
+= Eclipse
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-:page-partial:
 
+Additional configuration of Eclipse for contributors (and committers):
 
+* Set up the link:{attachmentsdir}/Apache-Isis.importorder[import order]
 
+Also:
 
-The vast majority of Java developers use an IDE to assist with developing their code, and we highly recommend that you do likewise as you develop your Apache Isis applications using an IDE.
-Apache Isis is built with Maven, and all modern IDEs can import Maven projects.
+* set up link:{attachmentsdir}/Apache-code-style-formatting.xml[code formatting]
+* set up the link:{attachmentsdir}/Apache-code-style-template.xml[code style templates]
+* set up link:{attachmentsdir}/Apache-Isis-code-style-cleanup.xml[code style cleanup]
 
-This chapter shows how to setup and use the IntelliJ IDEA.
-
-
-include::intellij.adoc[leveloffset=+1]
-//include::eclipse.adoc[leveloffset=+1]
diff --git a/antora/components/conguide/modules/git/nav.adoc b/antora/components/conguide/modules/git/nav.adoc
new file mode 100644
index 0000000..bd05fc4
--- /dev/null
+++ b/antora/components/conguide/modules/git/nav.adoc
@@ -0,0 +1 @@
+* xref:conguide:git:about.adoc[Git Cookbook]
diff --git a/antora/components/setupguide/modules/ROOT/pages/git-cookbook.adoc b/antora/components/conguide/modules/git/pages/about.adoc
similarity index 72%
rename from antora/components/setupguide/modules/ROOT/pages/git-cookbook.adoc
rename to antora/components/conguide/modules/git/pages/about.adoc
index 19e11ac..60d8119 100644
--- a/antora/components/setupguide/modules/ROOT/pages/git-cookbook.adoc
+++ b/antora/components/conguide/modules/git/pages/about.adoc
@@ -1,21 +1,14 @@
-[[git-cookbook]]
-= Appendix: Git Cookbook
+= Git Cookbook
 :notice: licensed to the apache software foundation (asf) under one or more contributor license agreements. see the notice file distributed with this work for additional information regarding copyright ownership. the asf licenses this file to you under the apache license, version 2.0 (the "license"); you may not use this file except in compliance with the license. you may obtain a copy of the license at. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
-:page-partial:
 
 
-
-
-
-This appendix describes the commands often used while working with git.  In addition to these basic commands, please make sure you have read:
+This chapter describes the commands often used while working with git.
+In addition to these basic commands, please make sure you have read:
 
 * xref:conguide:ROOT:building-apache-isis.adoc[building Apache Isis]
 * xref:conguide:ROOT:contributing.adoc[Contributing]
 * xref:comguide:ROOT:policies/git-policy.adoc[Git policy]
 
-
-
-
 == Modifying existing files
 
 To modify existing files:
@@ -26,9 +19,11 @@ git add filename
 git commit -m "ISIS-nnn: yada yada"
 ----
 
-The `git add` command adds the changes to the file(s) to the git index (aka staging area).  If you were to make subsequent changes to the file these would not be committed.
+The `git add` command adds the changes to the file(s) to the git index (aka staging area).
+If you were to make subsequent changes to the file these would not be committed.
 
-The `git commit` takes all the staged changes and commits them locally.  Note that these changes are not shared public with Apache Isis' central git repo.
+The `git commit` takes all the staged changes and commits them locally.
+Note that these changes are not shared public with Apache Isis' central git repo.
 
 You can combine these two commands using `-am` flag to git commit:
 
@@ -37,9 +32,6 @@ You can combine these two commands using `-am` flag to git commit:
 git commit -am "ISIS-nnn: yada yada"
 ----
 
-
-
-
 == Adding new files
 
 To add a new file:
@@ -50,11 +42,8 @@ git add .
 git commit -m "ISIS-nnn: yada yada"
 ----
 
-
-Note that this sequence of commands is identical to modifying an existing file.  However, it isn't possible to combine the two steps using `git commit -am`; the `git add` is always needed when adding new files to the repo.
-
-
-
+Note that this sequence of commands is identical to modifying an existing file.
+However, it isn't possible to combine the two steps using `git commit -am`; the `git add` is always needed when adding new files to the repo.
 
 == Deleting files
 
@@ -66,29 +55,20 @@ git rm filename
 git commit -m "ISIS-nnn: yada yada"
 ----
 
-
-
 == Renaming or moving files
 
 To rename or move a file:
 
-
 [source,bash]
 ----
 git mv <i>filename</i> <i>newfilename</i>
 git commit -m "ISIS-nnn: yada yada"
 ----
 
-
-
-
 == Common Workflows
 
-The xref:conguide:ROOT:contributing.adoc[contributing] page describes the workflow for non-committers.  The xref:comguide:ROOT:policies/git-policy.adoc[Git policy] page describes a workflow for Apache Isis **committers**.
-
-
-
-
+The xref:conguide:ROOT:contributing.adoc[contributing] page describes the workflow for non-committers.
+The xref:comguide:ROOT:policies/git-policy.adoc[Git policy] page describes a workflow for Apache Isis **committers**.
 
 == Backing up a local branch
 
@@ -110,7 +90,6 @@ Thereafter, you can push subsequent commits using simply:
 git push
 ----
 
-
 Doing this also allows others to collaborate on this branch, just as they would for `master`.
 
 When, eventually, you have reintegrated this branch, you can delete the remote branch using:
@@ -120,11 +99,8 @@ When, eventually, you have reintegrated this branch, you can delete the remote b
 git push origin --delete <i>branchname</i>
 ----
 
-
 For more detail, see this link:http://stackoverflow.com/questions/2003505/how-do-i-delete-a-git-branch-both-locally-and-in-github[stackoverflow post].
 
-
-
 == Quick change: stashing changes
 
 If you are working on something but are not ready to commit, then use:
@@ -134,7 +110,6 @@ If you are working on something but are not ready to commit, then use:
 git stash
 ----
 
-
 If you use `gitk --all` then you'll see new commits are made that hold the current state of your working directory and staging area.
 
 You can then, for example, pull down the latest changes using `git pull --rebase` (see above).
@@ -148,19 +123,16 @@ git stash pop
 
 Note that stashing works even if switching branches
 
-
 ## Ignoring files
 
-Put file patterns into `.gitignore`.  There is one at the root of the git repo, but they can additionally appear in subdirectories (the results are cumulative).
+Put file patterns into `.gitignore`.
+There is one at the root of the git repo, but they can additionally appear in subdirectories (the results are cumulative).
 
 See also:
 
 - link:https://help.github.com/articles/ignoring-files[github's help page]
 - link:http://www.kernel.org/pub/software/scm/git/docs/gitignore.html[man page]
 
-
-
-
 == More advanced use cases
 
 === If accidentally push to remote
@@ -203,14 +175,13 @@ Then, do a force push:
 git push origin master --force
 ----
 
-If this doesn't work, it may be that the remote repo has disabled this feature.  There are other hacks to get around this, see for example link:http://stackoverflow.com/questions/1377845/git-reset-hard-and-a-remote-repository[here].
-
-
-
+If this doesn't work, it may be that the remote repo has disabled this feature.
+There are other hacks to get around this, see for example link:http://stackoverflow.com/questions/1377845/git-reset-hard-and-a-remote-repository[here].
 
 == If you've accidentally worked on `master` branch
 
-If at any time the `git pull` from your upstream fails, it most likely means that you must have made commits on the `master` branch.  You can use `gitk --all` to confirm; at some point in time both `master` and `origin\master` will have a common ancestor.
+If at any time the `git pull` from your upstream fails, it most likely means that you must have made commits on the `master` branch.
+You can use `gitk --all` to confirm; at some point in time both `master` and `origin\master` will have a common ancestor.
 
 You can retrospectively create a topic branch for the work you've accidentally done on `master`.
 
@@ -221,19 +192,16 @@ First, create a branch for your current commit:
 git branch <i>newbranch</i>
 ----
 
-
-Next, make sure you have no outstanding edits.  If you do, you should commit them or stash them:
-
+Next, make sure you have no outstanding edits.
+If you do, you should commit them or stash them:
 
 [source,bash]
 ----
 git stash
 ----
 
-
 Finally, locate the shaId of the commit you want to roll back to (easily obtained in `gitk -all`), and wind `master` branch back to that commit:
 
-
 [source,bash]
 ----
 git checkout master
@@ -242,16 +210,3 @@ git reset --hard <i>shaId</i>      # move master branch shaId of common ancestor
 
 
 
-== If you've forgotten to prefix your commits (but not pushed)
-
-One of our committers, Alexander Krasnukhin, has put together some git scripts to help his workflow.  Using one of these, `git prefix`, you can just commit with proper message without bothering about prefix and add prefix only in the end *before* the final push.
-
-For example, to prefix all not yet prefixed commits `master..isis/666` with `ISIS-666` prefix, use:
-
-[source,bash]
-----
-git prefix ISIS-666 master..isis/666
-----
-
-
-You can grab this utility, and others, from link:https://github.com/themalkolm/git-boots[this repo].
diff --git a/antora/components/conguide/modules/ROOT/attachments/ide/intellij/Apache-Isis-importorder.xml b/antora/components/conguide/modules/intellij/attachments/Apache-Isis-importorder.xml
similarity index 100%
rename from antora/components/conguide/modules/ROOT/attachments/ide/intellij/Apache-Isis-importorder.xml
rename to antora/components/conguide/modules/intellij/attachments/Apache-Isis-importorder.xml
diff --git a/antora/components/conguide/modules/intellij/nav.adoc b/antora/components/conguide/modules/intellij/nav.adoc
new file mode 100644
index 0000000..83adc2f
--- /dev/null
+++ b/antora/components/conguide/modules/intellij/nav.adoc
@@ -0,0 +1 @@
+* xref:conguide:intellij:about.adoc[IntelliJ]
diff --git a/antora/components/setupguide/modules/ROOT/pages/about.adoc b/antora/components/conguide/modules/intellij/pages/about.adoc
similarity index 66%
copy from antora/components/setupguide/modules/ROOT/pages/about.adoc
copy to antora/components/conguide/modules/intellij/pages/about.adoc
index 6fad8a6..8a8550a 100644
--- a/antora/components/setupguide/modules/ROOT/pages/about.adoc
+++ b/antora/components/conguide/modules/intellij/pages/about.adoc
@@ -1,11 +1,7 @@
-= Setup Guide
+= IntelliJ
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-:page-role: -toc
 
+Additional configuration of IntelliJ for contributors (and committers).
 
-The vast majority of Java developers use an IDE to assist with developing their code, and we highly recommend that you do likewise as you develop your Apache Isis applications using an IDE.
-
-This guide explains how to setup your IDE so you can effectively and efficiently develop your Apache Isis apps.
-
-The guide also provides a number of general hints-n-tips.
+* Set up the link:{attachmentsdir}/Apache-Isis-importorder.xml[import order].
 
diff --git a/antora/components/docs/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc b/antora/components/docs/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
index 52db189..52ffc3c 100644
--- a/antora/components/docs/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
+++ b/antora/components/docs/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
@@ -50,7 +50,7 @@ _How to import an Apache Isis maven-based application into Eclipse and configure
 
 NB: when configuring DataNucleus for the *dom* project, make sure you are in the 'Java perspective', not the 'Java EE perspective'). +
 
-Learn more xref:setupguide:ROOT:eclipse.adoc[here]
+Learn more xref:setupguide:eclipse:about.adoc[here]
 
 |video::RgcYfjQ8yJA[youtube,width="420px",height="315px"]
 
@@ -60,7 +60,7 @@ Learn more xref:setupguide:ROOT:eclipse.adoc[here]
 
 _How to import an Apache Isis maven-based application into IntelliJ and run the app._ +
 
-Learn more xref:setupguide:ROOT:intellij.adoc[here]
+Learn more xref:setupguide:intellij:about.adoc[here]
 
 |video::lwKsyTbTSnA[youtube,width="420px",height="315px"]
 
diff --git a/antora/components/docs/modules/resources/pages/icons.adoc b/antora/components/docs/modules/resources/pages/icons.adoc
index b216a6b..65fd040 100644
--- a/antora/components/docs/modules/resources/pages/icons.adoc
+++ b/antora/components/docs/modules/resources/pages/icons.adoc
@@ -1,7 +1,7 @@
 = Icons
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
-:page-role: -title
+:page-role: -toc
 
 Most Apache Isis viewers use icons to help identify domain objects in the user interface.
 It's a good idea to ensure that these are styled consistently.
diff --git a/antora/components/setupguide/antora.yml b/antora/components/setupguide/antora.yml
index db3719b..b62ab14 100644
--- a/antora/components/setupguide/antora.yml
+++ b/antora/components/setupguide/antora.yml
@@ -4,3 +4,6 @@ version: master
 start_page: ROOT:about.adoc
 nav:
 - modules/ROOT/nav.adoc
+- modules/intellij/nav.adoc
+#- modules/eclipse/nav.adoc
+- modules/hints-and-tips/nav.adoc
diff --git a/antora/components/setupguide/modules/ROOT/attachments/intellij/other/.gitignore b/antora/components/setupguide/modules/ROOT/attachments/intellij/other/.gitignore
deleted file mode 100644
index 62d6a3b..0000000
--- a/antora/components/setupguide/modules/ROOT/attachments/intellij/other/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-!dan-settings-keymaps.jar
diff --git a/antora/components/setupguide/modules/ROOT/attachments/intellij/other/dan-settings-keymaps.jar b/antora/components/setupguide/modules/ROOT/attachments/intellij/other/dan-settings-keymaps.jar
deleted file mode 100644
index 75d09be..0000000
Binary files a/antora/components/setupguide/modules/ROOT/attachments/intellij/other/dan-settings-keymaps.jar and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/010-some-plugins.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/010-some-plugins.png
deleted file mode 100644
index 9e2230b..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/010-some-plugins.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/020-some-plugins-confirmation.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/020-some-plugins-confirmation.png
deleted file mode 100644
index 037c967..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/020-some-plugins-confirmation.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/lombok.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/lombok.png
deleted file mode 100644
index ece816e..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/lombok.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/010-dependency-tab.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/010-dependency-tab.png
deleted file mode 100644
index a42b430..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/010-dependency-tab.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/020-dependency-as-tree.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/020-dependency-as-tree.png
deleted file mode 100644
index 15ae90b..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/020-dependency-as-tree.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/030-maven-run-goal.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/030-maven-run-goal.png
deleted file mode 100644
index e8a6d1e..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/030-maven-run-goal.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png b/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png
deleted file mode 100644
index f3a6d67..0000000
Binary files a/antora/components/setupguide/modules/ROOT/images/intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png and /dev/null differ
diff --git a/antora/components/setupguide/modules/ROOT/nav.adoc b/antora/components/setupguide/modules/ROOT/nav.adoc
index 6098e74..e69de29 100644
--- a/antora/components/setupguide/modules/ROOT/nav.adoc
+++ b/antora/components/setupguide/modules/ROOT/nav.adoc
@@ -1,7 +0,0 @@
-* xref:intellij.adoc[Using IntelliJ]
-//* xref:eclipse.adoc[Using Eclipse]
-* xref:hints-and-tips.adoc[Hints and Tips]
-* xref:git-cookbook.adoc[Git Cookbook]
-* xref:working-with-many-repos.adoc[Working with Many Repos]
-* xref:resources/cheat-sheet.adoc[Cheat Sheet]
-* xref:resources/icons.adoc[Icons]
diff --git a/antora/components/setupguide/modules/ROOT/pages/about.adoc b/antora/components/setupguide/modules/ROOT/pages/about.adoc
index 6fad8a6..ef902a1 100644
--- a/antora/components/setupguide/modules/ROOT/pages/about.adoc
+++ b/antora/components/setupguide/modules/ROOT/pages/about.adoc
@@ -5,7 +5,7 @@
 
 The vast majority of Java developers use an IDE to assist with developing their code, and we highly recommend that you do likewise as you develop your Apache Isis applications using an IDE.
 
-This guide explains how to setup your IDE so you can effectively and efficiently develop your Apache Isis apps.
+So the main purpose of this guide explains how to setup your IDE so you can effectively and efficiently develop your Apache Isis apps.
 
-The guide also provides a number of general hints-n-tips.
+It also provides a number of general hints-n-tips.
 
diff --git a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/enabling-logging.adoc b/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/enabling-logging.adoc
deleted file mode 100644
index 7b69f02..0000000
--- a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/enabling-logging.adoc
+++ /dev/null
@@ -1,38 +0,0 @@
-= Enabling Logging
-:notice: licensed to the apache software foundation (asf) under one or more contributor license agreements. see the notice file distributed with this work for additional information regarding copyright ownership. the asf licenses this file to you under the apache license, version 2.0 (the "license"); you may not use this file except in compliance with the license. you may obtain a copy of the license at. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
-:page-partial:
-
-Sometimes you just need to see what is going on.
-There are various ways in which logging can be enabled, here are the ones we tend to use.
-
-* In Apache Isis +
-+
-Modify `WEB-INF/logging.properties` (a log4j config file)
-
-* In DataNucleus +
-+
-As per the http://www.datanucleus.org/products/accessplatform/logging.html[DN logging page]
-
-* In the JDBC Driver +
-+
-Configure `log4jdbc` JDBC rather than the vanilla driver (see `application.properties`).
-
-* In the database +
-+
-Details below.
-
-
-Database logging can be configured:
-
-* for HSQLDB +
-+
-by adding`;sqllog=3` to the end of the JDBC URL.
-
-* for PostgreSQL: +
-+
-Can change `postgresql\9.2\data\postgresql.conf`; see link:http://www.postgresql.org/docs/9.2/static/runtime-config-logging.html[this article] for details.
-
-* for MS SQL Server Logging: +
-+
-We like to use the excellent SQL Profiler tool.
-
diff --git a/antora/components/setupguide/modules/ROOT/pages/intellij.adoc b/antora/components/setupguide/modules/ROOT/pages/intellij.adoc
deleted file mode 100644
index 34d141c..0000000
--- a/antora/components/setupguide/modules/ROOT/pages/intellij.adoc
+++ /dev/null
@@ -1,570 +0,0 @@
-= Developing using IntelliJ IDEA
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-:page-partial:
-
-This section describes how to install and setup JetBrains' IntelliJ IDEA, then how to import an application into IntelliJ and run it.
-
-NOTE: This material does not constitute an endorsement; JetBrains is not affiliated to Apache Software Foundation in any way.
-JetBrains does however provide complimentary copies of the IntelliJ IDE to Apache committers.
-
-== Installing and Setting up
-
-This section covers installation and setup.
-These notes/screenshots were prepared using IntelliJ IDEA Community Edition 2019.3, but is believed to be compatible with more recent versions/other editions of the IDE.
-
-=== Download and Install
-
-https://www.jetbrains.com/idea/download/[Download] latest version of IntelliJ Community Edition, and install.
-
-
-=== Import Project
-
-In IntelliJ a project can contain multiple modules; these need not be physically located together.
-
-Download either the xref:docs:starters:helloworld.adoc[HelloWorld] or xref:docs:starters:simpleapp.adoc[SimpleApp] starter app to your filesystem.
-
-From the welcome screen, select "import project":
-
-image::intellij-idea/015-import-project/010-welcome.png[width="400px",link="{imagesdir}/intellij-idea/015-import-project/010-welcome.png"]
-
-Navigate to the top-level pom.xml of the starter app:
-
-image::intellij-idea/015-import-project/020-import-pom.png[width="300px",link="{imagesdir}/intellij-idea/015-import-project/020-import-pom.png"]
-
-Project imported:
-
-image::intellij-idea/015-import-project/030-imported.png[width="800px",link="{imagesdir}/intellij-idea/015-import-project/030-imported.png"]
-Start off by creating a new project:
-
-
-Use menu:File[Project Structure] to confirm that JDK 8 is configured:
-
-image::intellij-idea/015-import-project/040-project-structure.png[width="400px",link="{imagesdir}/intellij-idea/015-import-project/040-project-structure.png"]
-
-
-//=== File templates
-//
-//Next we recommend you import a set of standard file templates.
-//These are used to create new classes or supporting files:
-//
-//.File templates
-//image::intellij-idea/030-import-settings/040-file-templates.png[width="400px",link="{imagesdir}/intellij-idea/030-import-settings/040-file-templates.png"]
-//
-//The file templates are provided as a settings JAR file, namely *link:{attachmentsdir}/intellij/isis-settings-file-templates.jar[isis-settings-file-templates.jar]*.
-//Download this file.
-//
-//Next, import using `File > Import Settings`, specifying the directory that you have downloaded the file to:
-//
-//.IntelliJ Import Settings - Specify JAR file
-//image::intellij-idea/030-import-settings/010-settings-import-jar.png[width="400px",link="{imagesdir}/intellij-idea/030-import-settings/010-settings-import-jar.png"]
-//
-//Select all the categories (there should just be one), and hit OK. then hit restart.
-//
-//[WARNING]
-//====
-//If importing into IntelliJ 2017.2.3 two categories are shown - "File templates" and "File templates (schemes)".
-//Select all the categories.
-//
-//Apparently no categories are shown if importing into IntelliJ 2016.1.1 Community Edition (and perhaps other 2016 versions).
-//The file does import ok into IntelliJ 15.0.x, so we think this is a bug in the 2016 version.
-//
-//The workaround is to extract the `.jar` file locally and copy the files into IntelliJ's `config` directory, somewhere in your home directory:
-//
-//* Windows `<User home>\.IdeaIC2016\config`
-//* Linux `~/..IdeaIC2016/config`
-//* Mac OS `~/Library/Preferences/IdeaIC2016`
-//
-//====
-
-//=== Live templates
-//
-//We also recommend you import a set of live templates.
-//These are used to add new methods to existing classes:
-//
-//.Live templates
-//image::intellij-idea/030-import-settings/050-live-templates.png[width="600px",link="{imagesdir}/intellij-idea/030-import-settings/050-live-templates.png"]
-//
-//The live templates have a prefix of either:
-//
-//* `is` : for Apache Isis domain objects
-//* `ju` : for JUnit tests
-//* `jm` : for JMock mocks or libraries
-//
-//The live templates are also provided as a settings JAR file, namely *link:{attachmentsdir}/resources/intellij/isis-settings-live-templates.jar[isis-settings-live-templates.jar]*.
-//Download and import (as for the previous settings JAR files).
-
-//=== Coding Standards
-//
-//Next, we suggest you import settings for standard ASF/Apache Isis coding conventions.
-//This file is also provided as a settings file, namely *link:{attachmentsdir}/intellij/isis-settings-code-style.jar[isis-settings-code-style.jar]*.
-//Download and import (as for the above settings JAR files).
-
-=== Other Settings (Compiler)
-
-There are a number of compiler settings that influence the compiler.
-We highly recommend you set these.
-
-On the *Compiler* Settings page, ensure that `build automatically` is enabled (and optionally `compile independent modules in parallel`):
-
-.IntelliJ Compiler Settings
-image::intellij-idea/040-other-settings-compiler/010-build-automatically.png[width="700px",link="{imagesdir}/intellij-idea/040-other-settings-compiler/010-build-automatically.png"]
-
-
-On the *Annotation Processors* page, confirm that these are enabled for all of the `packaging=jar` modules (in other words, those that contain Java and have a `src/main/java` directory):
-
-.IntelliJ Annotation Processor Settings
-image::intellij-idea/040-other-settings-compiler/020-annotation-processor.png[width="700px",link="{imagesdir}/intellij-idea/040-other-settings-compiler/020-annotation-processor.png"]
-
-This setting enables the generation of the `Q*` classes for DataNucleus type-safe queries, as well as being required for frameworks such as xref:setupguide:ROOT:hints-and-tips.adoc#project-lombok[Project Lombok].
-
-
-=== Other Settings (Maven)
-
-There are also some other settings for Maven that we recommend you adjust (though these are less critical):
-
-On the Maven settings page:
-
-.IntelliJ Maven Settings - Installation
-image::intellij-idea/042-other-settings-maven/010-maven-installation.png[width="700px",link="{imagesdir}/intellij-idea/042-other-settings-maven/010-maven-installation.png"]
-
-Still on the Maven settings page, configure as follows:
-
-.IntelliJ Maven Settings - Configuration
-image::intellij-idea/042-other-settings-maven/020-maven-configuration.png[width="700px",link="{imagesdir}/intellij-idea/042-other-settings-maven/020-maven-configuration.png"]
-
-=== Other Settings (Misc)
-
-These settings are optional but also recommended.
-
-On the *Auto Import* settings page, check the `optimize imports on the fly` and `add unambiguous imports on the fly`
-
-.IntelliJ Auto Import Setting
-image::intellij-idea/044-other-settings-misc/010-auto-import.png[width="700px",link="{imagesdir}/intellij-idea/044-other-settings-misc/010-auto-import.png"]
-
-
-
-== Running
-
-Let's see how to run both the app and the tests.
-
-=== Running the App
-
-We run the application by creating a Run configuration, using `Run > Edit Configurations`.
-
-There is one complication.
-DataNucleus requires that all entities are bytecode enhanced.
-When building from the command line using Maven, the `datanucleus:enhance` Maven plugin takes care of this.
-When building within IntelliJ, though, there is no similar plugin.
-
-However, this is easily solved: we can just have IntelliJ run the enhance as a separate run configuration before the run configuration that runs the app itself.
-
-First, set up the run configuration to do the enhance:
-
-.Run Configuration to enhance the entities
-image::intellij-idea/110-running-the-app/005-datanucleus-enhance-run-configuration.png[width="700px",link="{imagesdir}/intellij-idea/110-running-the-app/005-datanucleus-enhance-run-configuration.png"]
-
-TIP: Check "work offline" (on the General tab) to speed this up slightly.
-
-[WARNING]
-====
-If on Windows you encounter a "The command line is too long" error, then set '-Dfork=false' as a VM option (on the Runner tab).
-====
-
-Then, set up the run configuration for the app.
-Note how it runs the enhance configuration first:
-
-.Run Configuration to run the app
-image::intellij-idea/110-running-the-app/010-run-configuration.png[width="700px",link="{imagesdir}/intellij-idea/110-running-the-app/010-run-configuration.png"]
-
-You should now be able to run the app using `Run > Run Configuration`.
-The same configuration can also be used to debug the app if you so need.
-
-
-=== Running the Unit Tests
-
-The easiest way to run the unit tests is just to right click on the relevant package in the _Project Window_, and choose run unit tests.
-Hopefully your tests will pass (!).
-
-.Running Unit Tests from Project Explorer
-image::intellij-idea/110-running-the-app/030-running-unit-tests.png[width="300px",link="{imagesdir}/intellij-idea/110-running-the-app/030-running-unit-tests.png"]
-
-As a side-effect, this will create a run configuration, very similar to the one we manually created for the main app:
-
-.Unit Tests Run Configuration
-image::intellij-idea/110-running-the-app/040-running-unit-tests-run-configuration.png[width="700px",link="{imagesdir}/intellij-idea/110-running-the-app/040-running-unit-tests-run-configuration.png"]
-
-Thereafter, you should run units by selecting this configuration (if you use the right click approach you'll end up with lots of run configurations, all similar).
-
-=== Running the Integration Tests
-
-Integration tests can be run in the same way as unit tests, however the module must also have been enhanced.
-
-One approach is to initially run the tests use the right click on the `integtests` module:
-
-.Running Integ Tests from Project Explorer
-image::intellij-idea/110-running-the-app/045-running-integ-tests.png[width="400px",link="{imagesdir}/intellij-idea/110-running-the-app/045-running-integ-tests.png"]
-
-The tests might fail because the entities won't have been enhanced.
-However, we can then easily update the run configuration to run the datanucleus enhancer goal (same as when running the application):
-
-.Integration Tests Run Configuration
-image::intellij-idea/110-running-the-app/050-running-integration-tests-run-configuration.png[width="700px",link="{imagesdir}/intellij-idea/110-running-the-app/050-running-integration-tests-run-configuration.png"]
-
-
-CAUTION: Make sure that the `search for tests` radio button is set to `In single module`.
-If this radio button is set to one of the other options then you may obtain class loading issues.
-
-
-
-== Hints and Tips
-
-=== Keyboard Cheat Sheets
-
-You can download 1-page PDFs cheat sheets for IntelliJ's keyboard shortcuts:
-* for link:https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard.pdf[Windows]
-* for link:https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard_Mac.pdf[MacOS]
-
-Probably the most important shortcut on them is for `Find Action`:
-- `ctrl-shift-A` on Windows
-- `cmd-shift-A` on MacOS.
-
-This will let you search for any action just by typing its name.
-
-=== Switch between Tools & Editors
-
-The Tool Windows are the views around the editor (to left, bottom and right).
-It's possible to move these around to your preferred locations.
-
-* Use `alt-1` through `alt-9` (or `cmd-1` through `alt-9`) to select the tool windows
-** Press it twice and the tool window will hide itself; so can use to toggle
-* If in the _Project Window_ (say) and hit enter on a file, then it will be shown in the editor, but (conveniently) the focus remains in the tool window.
-To switch to the editor, just press `Esc`.
-** If in the _Terminal Window_, you'll need to press `Shift-Esc`.
-* If on the editor and want to locate the file in (say) the _Project Window_, use `alt-F1`.
-* To change the size of any tool window, use `ctrl-shift-arrow`
-
-Using these shortcuts you can easily toggle between the tool windows and the editor, without using the mouse.
-Peachy!
-
-=== Navigating Around
-
-For all of the following, you don't need to type every letter, typing "ab" will actually search for ".*a.*b.*".
-
-* to open classes or files or methods that you know the name of:
-** `ctrl-N` to open class
-** `ctrl-shift-N` to open a file
-** (bit fiddly this) `ctrl-shift-alt-N` to search for any symbol.
-* open up dialog of recent files: `ctrl-E`
-* search for any file: `shift-shift`
-
-Navigating around:
-
-* find callers of a method (the call hierarchy): `ctrl-alt-H`
-* find subclasses or overrides: `ctrl-alt-B`
-* find superclasses/interface/declaration: `ctrl-B`
-
-Viewing the structure (ie outline) of a class
-* `ctrl-F12` will pop-up a dialog showing all members
-** hit `ctrl-F12` again to also see inherited members
-
-=== Editing
-
-* Extend selection using `ctrl-W`
-** and contract it down again using `ctrl-shift-W`
-* to duplicate a line, it's `ctrl-D`
-** if you have some text selected (or even some lines), it'll actually duplicate the entire selection
-* to delete a line, it's `ctrl-X`
-* to move a line up or down: `shift-alt-up` and `shift-alt-down`
-** if you have selected several lines, it'll move them all togethe
-* `ctrl-shift-J` can be handy for joining lines together
-** just hit enter to split them apart (even in string quotes; IntelliJ will "do the right thing")
-
-=== Intentions and Code Completion
-
-Massively useful is the "Intentions" popup; IntelliJ tries to guess what you might want to do.
-You can activate this using`alt-enter`, whenever you see a lightbulb/tooltip in the margin of the current line.
-
-Code completion usually happens whenever you type '.'.
-You can also use `ctrl-space` to bring these up.
-
-In certain circumstances (eg in methods0) you can also type `ctrl-shift-space` to get a smart list of methods etc that you might want to call.
-Can be useful.
-
-Last, when invoking a method, use `ctrl-P` to see the parameter types.
-
-=== Refactoring
-
-Loads of good stuff on the `Refactor` menu; most used are:
-
-* Rename (`shift-F6`)
-* Extract
-** method: `ctrl-alt-M`
-** variable: `ctrl-alt-V`
-* Inline method/variable: `ctrl-alt-N`
-* Change signature
-
-If you can't remember all those shortcuts, just use `ctrl-shift-alt-T` (might want to rebind that to something else!) and get a context-sensitive list of refactorings available for the currently selected object
-
-=== Plugins
-
-You might want to set up some additional plugins.
-You can do this using `File > Settings > Plugins` (or equivalently `File > Other Settings > Configure Plugins`).
-
-Recommended are:
-
-* link:https://plugins.jetbrains.com/plugin/7179?pr=idea[Maven Helper] plugin
-//+
-//More on this below.
-
-* link:https://plugins.jetbrains.com/plugin/7391-asciidoc[AsciiDoctor] plugin
-+
-Extremely useful if you are doing any authoring of documents (plugin's git repo is link:https://github.com/asciidoctor/asciidoctor-intellij-plugin[here])
-
-* link:https://plugins.jetbrains.com/plugin/6317-lombok[Lombok] plugin
-+
-If you plan to use link:https://projectlombok.org[Project Lombok] to reduce boilerplate.
-
-//Some others you might like to explore are:
-//
-//.IntelliJ Plugins
-//image::intellij-idea/050-some-plugins/020-some-plugins-confirmation.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/020-some-plugins-confirmation.png"]
-
-//==== Maven Helper Plugin
-//
-//This plugin provides a couple of great features.
-//One is better visualization of dependency trees (similar to Eclipse).
-//
-//If you open a `pom.xml` file, you'll see an additional "Dependencies" tab:
-//
-//image::intellij-idea/050-some-plugins/maven-helper/010-dependency-tab.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/maven-helper/010-dependency-tab.png"]
-//
-//Clicking on this gives a graphical tree representation of the dependencies, similar to that obtained by `mvn dependency:tree`, but filterable.
-//
-//image::intellij-idea/050-some-plugins/maven-helper/020-dependency-as-tree.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/maven-helper/020-dependency-as-tree.png"]
-//
-//The plugin also provides the ability to easily run a Maven goal on a project:
-//
-//image::intellij-idea/050-some-plugins/maven-helper/030-maven-run-goal.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/maven-helper/030-maven-run-goal.png"]
-//
-//This menu can also be bound to a keystroke so that it is available as a pop-up:
-//
-//image::intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png"]
-
-
-=== Troubleshooting
-
-When a Maven module is imported, IntelliJ generates its own project files (suffix `.ipr`), and the application is actually built from that.
-
-Occasionally these don't keep in sync (even if auto-import of Maven modules has been enabled).
-
-To fix the issue, try:
-
-* reimport module
-* rebuild selected modules/entire project
-* remove and then re-add the project
-* restart, invalidating caches
-* hit StackOverflow (!)
-
-One thing worth knowing; IntelliJ actively scans the filesystem all the time.
-It's therefore (almost always) fine to build the app from the Maven command line; IntelliJ will detect the changes and keep in sync.
-If you want to force that, use `File > Synchronize`, `ctrl-alt-Y`.
-
-//If you hit an error of "duplicate classes":
-//
-//image::intellij-idea/060-troubleshooting/010-duplicate-classes.png[width="600px",link="{imagesdir}/intellij-idea/060-troubleshooting/010-duplicate-classes.png"]
-//
-//then make sure you have correctly configured the xref:setupguide:ROOT:intellij.adoc#other-settings-compiler[annotation processor] settings.
-//Pay attention in particular to the "Production sources directory" and "Test sources directory", that these are set up correctly.
-
-== Faster turnaround times
-
-In this section are several options that will reduce the time it takes between making a source code edit and seeing the results in the running app. code/build/deploy/review feedback loop.
-
-//=== Using Grade to compile/enhance
-//
-//Running an Apache Isis application requires that the DataNucleus enhancer runs on the compiled bytecode.
-//As described xref:setupguide:ROOT:intellij.adoc#running-the-app[above], the recommended way to do this with IntelliJ is to use a Run configuration that runs the enhancer goal prior to launch.
-//
-//Alternative, you can use the following `build.gradle` script in your `dom` module:
-//
-//[source,groovy]
-//.`build.gradle`
-//----
-//apply plugin: 'java'
-//apply plugin: 'tangram.tools'
-//sourceCompatibility = 1.8
-//targetCompatibility = 1.8
-//version = (new XmlParser()).parse('pom.xml').parent.version.text()
-//buildscript {
-//  repositories {
-//    maven { url "http://oss.jfrog.org/artifactory/oss-snapshot-local" }
-//    jcenter()
-//  }
-//  dependencies {
-//    classpath 'tangram:gradle-plugin:1.1.2'
-//  }
-//}
-//repositories {
-//    mavenLocal()
-//    maven { url "http://oss.jfrog.org/artifactory/oss-snapshot-local" }
-//    jcenter()
-//}
-//dependencies {
-//    compile group: 'org.apache.isis.core', name: 'isis-core-applib', version: version
-//}
-//task copyClasses << {
-//    copy {
-//        from 'build/classes/main'
-//        into 'target/classes'
-//    }
-//}
-//----
-//
-//The script is intended to be in the background as a daemon while editing/developing; whenever a change is made to any source code, gradle will automatically compile _and_ enhance the code.
-//In this way it eliminates the need to start up Maven and run the enhancer goal.
-//
-//To use, you must disable the IntelliJ's automatic building of the 'dom' project.
-//This is done using:
-//`File > Settings > Build, Execution, Deployment > Compiler > Excludes`, and then exclude the `.../dom/src/main/java`
-//directory:
-//
-//image::intellij-idea/070-advanced/002-compiler-exclude.png[width="800px",link="{imagesdir}/intellij-idea/070-advanced/002-compiler-exclude.png"]
-//
-//
-//The script can be run in the background using:
-//
-//[source,bash]
-//----
-//gradle -t --offline &
-//----
-//
-//from the command line (in the `dom` module).
-//
-//image::intellij-idea/070-advanced/004-gradle-output.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/004-gradle-output.png"]
-//
-//=== Using Gradle for liveReload
-//
-//Similarly, gradle can be run to reduce the turn-around time when tweaking the UI (defined by the
-//xref:vw:ROOT:layout.adoc#file-based[`*.layout.xml`] file for each domain class), when the app is running.
-//
-//The framework will automatically notice any changes to `.layout.xml` files, but these are read from the classpath (the `target/classes` directory), not the source path.
-//With IntelliJ these can be copied over manually by invoking `Run > Reload Changed Classes`.
-//Once the browser is refreshed, the new layout will be rendered.
-//
-//[NOTE]
-//====
-//We've occasionally noticed that this interferes with Wicket's own javascript - switching tabs becomes unresponsive.
-//The work-around is just to reload the page.
-//====
-//
-//To reduce the turn-around time there are therefore two steps to be automated:
-//
-//* the copying of the `.layout.xml` files over to the `target/classes` directory
-//* the triggering of a page refresh by the browser.
-//
-//The `layouts.gradle` script takes care of the first of these; whenever a change is made to any `.layout.xml` file, gradle will automatically copy over the file to the `target/classes` directory:
-//
-//[source,groovy]
-//.`layouts.gradle`
-//----
-//defaultTasks 'copyLayouts'
-//task copyLayouts(type:Copy) {
-//    from 'src/main/java'
-//    into 'target/classes'
-//    include '**/*.layout.xml'
-//}
-//----
-//
-//Similarly, the `liveReload.gradle` script takes care of the browser refresh:
-//
-//[source,groovy]
-//.`liveReload.gradle`
-//----
-//defaultTasks 'liveReload'
-//buildscript {
-//    repositories {
-//        jcenter()
-//    }
-//    dependencies {
-//        classpath 'org.kordamp.gradle:livereload-gradle-plugin:0.2.1'
-//    }
-//}
-//apply plugin: 'org.kordamp.gradle.livereload'
-//liveReload {
-//    docRoot new File('target/classes').canonicalPath
-//}
-//----
-//
-//These scripts can be run together using:
-//
-//[source,bash]
-//----
-//gradle -t --offline -b layouts.gradle &
-//gradle -t --offline -b liveReload.gradle &
-//----
-//
-//from the command line (in the `dom` module):
-//
-//
-//image::intellij-idea/070-advanced/005-gradle-output.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/005-gradle-output.png"]
-//
-//
-//Live reload also requires that the `isis.viewer.wicket.liveReloadUrl` configuration property is set appropriately:
-//
-//[source,ini]
-//.`viewer_wicket.properties`
-//----
-//isis.viewer.wicket.liveReloadUrl=http://localhost:35729/livereload.js?snipver=1
-//----
-//
-//You can confirm the script is loaded correctly using the web browser's development tools, eg:
-//
-//
-//image::intellij-idea/070-advanced/006-livereload-js.png[width="800px",link="{imagesdir}/intellij-idea/070-advanced/006-livereload-js.png"]
-//
-//=== Setting up DCEVM
-//
-//link:http://github.com/dcevm/dcevm[DCEVM] enhances the JVM with true hot-swap adding/removing of methods as well as more reliable hot swapping of the implementation of existing methods.
-//
-//In the context of Apache Isis, this is very useful for contributed actions and mixins and also view models; you should then be able to write these actions and have them be picked up without restarting the application.
-//
-//Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.
-//You may find that adding actions will work, but adding new properties or collections is much less likely to.
-//
-//To set up DCEVM, download the appropriate JAR from the link:https://dcevm.github.io/[github page], and run the installer.
-//For example:
-//
-//[source,bash]
-//----
-//java -jar DCEVM-light-8u51-installer.jar
-//----
-//
-//[TIP]
-//====
-//Be sure to run with appropriate privileges to be able to write to the installation directories of the JDK. If running on Windows, that means running as `Administrator`.
-//====
-//
-//After a few seconds this will display a dialog listing all installations of JDK that have been found:
-//
-//image::intellij-idea/070-advanced/010-dcevm-list-of-found-jdk-installations.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/010-dcevm-list-of-found-jdk-installations.png"]
-//
-//
-//Select the corresponding installation, and select `Replace by DCEVM`.
-//
-//image::intellij-idea/070-advanced/020-dcevm-once-installed.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/020-dcevm-once-installed.png"]
-//
-//
-//In IntelliJ, register the JDK in `File > Project Structure` dialog:
-//
-//image::intellij-idea/070-advanced/030-dcevm-intellij-project-structure.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/030-dcevm-intellij-project-structure.png"]
-//
-//Finally, in the run configuration, select the patched JDK:
-//
-//image::intellij-idea/070-advanced/040-dcevm-run-configuration.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/040-dcevm-run-configuration.png"]
-//
-//=== Setting up JRebel
-//
-//See the repo for the (non-ASF) link:https://github.com/isisaddons/isis-jrebel-plugin[Isis JRebel] plugin.
-//
-//Note that JRebel is a commercial product, requiring a license.
-//At the time of writing there is also currently a non-commercial free license (though note this comes with some usage conditions).
diff --git a/antora/components/setupguide/modules/ROOT/pages/working-with-many-repos.adoc b/antora/components/setupguide/modules/ROOT/pages/working-with-many-repos.adoc
deleted file mode 100644
index 5371ee4..0000000
--- a/antora/components/setupguide/modules/ROOT/pages/working-with-many-repos.adoc
+++ /dev/null
@@ -1,104 +0,0 @@
-[[working-with-many-repos]]
-= Appendix: Working with Many Repos
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-
-
-
-Applications built with Apache Isis often (should) consist of multiple modules.
-For example, there are the various modules that make up the (non-ASF) link:https://platform.incode.org[Incode Platform^] that provide various technical/cross-cutting concerns and generic business functionality.
-
-In addition, your own application may well be structured as a number of distinct modules (probably with the entities in each module being mapped to a different schema), and using such techniques as the xref:userguide:fun:building-blocks.adoc#domain-events[event bus] and xref:userguide:fun:building-blocks.adoc#mixins[mixins] so that these modules are decoupled from each other.
-
-All of which is a preamble to say that you will likely have multiple directories on your local development computer, for each such git repository that you contribute to.
-
-In this appendix we provide some simple but useful bash scripts to help you manage each such.
-
-
-== Prerequisites
-
-We recommend that you adopt a convention for your directories.  For example, open source repositories (such as Apache Isis itself or the Incode Platform) reside in link:https://github.com/[github.com], while your own proprietary code might reside in some other service, eg link:https://bitbucket.org/[bitbucket].  For example:
-
-[source]
-----
-/users/home/me/
-    BITBUCKET/
-        mycompany/
-            myapp/
-            otherapp/
-    GITHUB/
-        apache/
-            isis/
-        incodehq/
-            incode-platform/
-----
-
-
-== `_repos.txt`
-
-Create a file `_repos.txt` that catalogues the repositories, eg:
-
-[source]
-----
-#
-# our code
-#
-/users/home/me/BITBUCKET/mycompany/myapp
-/users/home/me/BITBUCKET/mycompany/otherapp
-#
-# open source modules
-#
-/users/home/me/GITHUB/apache/isis
-/users/home/me/GITHUB/incodehq/incode-platform
-----
-
-
-
-== Bash functions
-
-The `.bash_functions` file (downloadable from this link:https://gist.github.com/danhaywood/21b5b885433fd8bc440da3fab88c91cb[gist]) provides the following two functions:
-
-
-* `repo` +
-+
-Switches (using `pushd`) to the specified directory (as listed in the `_repos.txt` file).
-
-* `foreach` +
-+
-Runs the specified command for all (or matching) repositories (as listed in `_repos.txt` file).
-
-
-For example,
-
-[source,bash]
-----
-repo plat
-----
-
-would switch to `/users/home/me/GITHUB/incodehq/incode-platform`, the first module that matches the fragment.
-
-
-Meanwhile:
-
-[source,bash]
-----
-foreach git status
-----
-
-would perform a `git status` on every git repository, while
-
-[source,bash]
-----
-foreach -g plat git fetch
-----
-
-would perform a `git fetch` but only to those repositories which match "plat" (`-g` flag standing for `grep`).
-
-
-To load the functions into your profile (`.bashrc` or `.profile` or similar), use:
-
-[source,bash]
-----
-. ~/.bash_functions
-----
-
-
diff --git a/antora/components/setupguide/modules/ROOT/partials/x.sh b/antora/components/setupguide/modules/ROOT/partials/x.sh
deleted file mode 100644
index 065a6a6..0000000
--- a/antora/components/setupguide/modules/ROOT/partials/x.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-for a in `ls | grep _dg`
-do
-	b=$(echo $a | cut -c5- | sed 's|_|/|g')
-	d=$(dirname $b)
-	f=$(basename $b)
-	mkdir -p ../$d
-	mv $a ../$d/$f
-done
diff --git a/antora/components/setupguide/modules/ROOT/attachments/eclipse/isis-templates.xml b/antora/components/setupguide/modules/eclipse/attachments/isis-templates.xml
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/attachments/eclipse/isis-templates.xml
rename to antora/components/setupguide/modules/eclipse/attachments/isis-templates.xml
diff --git a/antora/components/setupguide/modules/ROOT/attachments/eclipse/jmock2-templates.xml b/antora/components/setupguide/modules/eclipse/attachments/jmock2-templates.xml
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/attachments/eclipse/jmock2-templates.xml
rename to antora/components/setupguide/modules/eclipse/attachments/jmock2-templates.xml
diff --git a/antora/components/setupguide/modules/ROOT/attachments/eclipse/junit4-templates.xml b/antora/components/setupguide/modules/eclipse/attachments/junit4-templates.xml
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/attachments/eclipse/junit4-templates.xml
rename to antora/components/setupguide/modules/eclipse/attachments/junit4-templates.xml
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/010-lombok-locate-jar.png b/antora/components/setupguide/modules/eclipse/images/2017-oxygen/010-lombok-locate-jar.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/010-lombok-locate-jar.png
rename to antora/components/setupguide/modules/eclipse/images/2017-oxygen/010-lombok-locate-jar.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/020-lombok-install-into-eclipse.png b/antora/components/setupguide/modules/eclipse/images/2017-oxygen/020-lombok-install-into-eclipse.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/020-lombok-install-into-eclipse.png
rename to antora/components/setupguide/modules/eclipse/images/2017-oxygen/020-lombok-install-into-eclipse.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/030-datanucleus-install-new-software.png b/antora/components/setupguide/modules/eclipse/images/2017-oxygen/030-datanucleus-install-new-software.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/030-datanucleus-install-new-software.png
rename to antora/components/setupguide/modules/eclipse/images/2017-oxygen/030-datanucleus-install-new-software.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/040-datanucleus-specify-repository.png b/antora/components/setupguide/modules/eclipse/images/2017-oxygen/040-datanucleus-specify-repository.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/040-datanucleus-specify-repository.png
rename to antora/components/setupguide/modules/eclipse/images/2017-oxygen/040-datanucleus-specify-repository.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/050-datanucleus-select-plugin.png b/antora/components/setupguide/modules/eclipse/images/2017-oxygen/050-datanucleus-select-plugin.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/050-datanucleus-select-plugin.png
rename to antora/components/setupguide/modules/eclipse/images/2017-oxygen/050-datanucleus-select-plugin.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/060-enable-annotation-processor.png b/antora/components/setupguide/modules/eclipse/images/2017-oxygen/060-enable-annotation-processor.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/2017-oxygen/060-enable-annotation-processor.png
rename to antora/components/setupguide/modules/eclipse/images/2017-oxygen/060-enable-annotation-processor.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-010-windows-preferences.png b/antora/components/setupguide/modules/eclipse/images/eclipse-010-windows-preferences.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-010-windows-preferences.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-010-windows-preferences.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-025-project-properties.png b/antora/components/setupguide/modules/eclipse/images/eclipse-025-project-properties.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-025-project-properties.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-025-project-properties.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-100-project-support.png b/antora/components/setupguide/modules/eclipse/images/eclipse-100-project-support.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-100-project-support.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-100-project-support.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-110-project-support.png b/antora/components/setupguide/modules/eclipse/images/eclipse-110-project-support.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-110-project-support.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-110-project-support.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-120-console.png b/antora/components/setupguide/modules/eclipse/images/eclipse-120-console.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-120-console.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-120-console.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-200-enhancer-fails-duplicates.png b/antora/components/setupguide/modules/eclipse/images/eclipse-200-enhancer-fails-duplicates.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-200-enhancer-fails-duplicates.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-200-enhancer-fails-duplicates.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-210-enhancer-fails-duplicates.png b/antora/components/setupguide/modules/eclipse/images/eclipse-210-enhancer-fails-duplicates.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-210-enhancer-fails-duplicates.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-210-enhancer-fails-duplicates.png
diff --git a/antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-220-enhancer-fails-duplicates.png b/antora/components/setupguide/modules/eclipse/images/eclipse-220-enhancer-fails-duplicates.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/eclipse/eclipse-220-enhancer-fails-duplicates.png
rename to antora/components/setupguide/modules/eclipse/images/eclipse-220-enhancer-fails-duplicates.png
diff --git a/antora/components/setupguide/modules/eclipse/nav.adoc b/antora/components/setupguide/modules/eclipse/nav.adoc
new file mode 100644
index 0000000..a2c0096
--- /dev/null
+++ b/antora/components/setupguide/modules/eclipse/nav.adoc
@@ -0,0 +1 @@
+* xref:setupguide:eclipse:about.adoc[Using Eclipse]
diff --git a/antora/components/setupguide/modules/ROOT/pages/eclipse.adoc b/antora/components/setupguide/modules/eclipse/pages/eclipse.adoc
similarity index 97%
rename from antora/components/setupguide/modules/ROOT/pages/eclipse.adoc
rename to antora/components/setupguide/modules/eclipse/pages/eclipse.adoc
index 9683409..a5a9544 100644
--- a/antora/components/setupguide/modules/ROOT/pages/eclipse.adoc
+++ b/antora/components/setupguide/modules/eclipse/pages/eclipse.adoc
@@ -17,7 +17,7 @@ This plugin needs to be configured for each of your domain modules (usually just
 
 We provide a set of editor templates.
 These are used to add new methods to existing classes.
-(These are equivalent to the xref:setupguide:ROOT:intellij.adoc#live-templates[IntelliJ live templates]):
+(These are equivalent to the xref:setupguide:intellij:about.adoc#live-templates[IntelliJ live templates]):
 
 * `is` (Apache Isis domain objects).  link:./resources/eclipse/isis-templates.xml[Download]
 * `ju` (for JUnit tests) link:./resources/eclipse/junit4-templates.xml[Download]
@@ -178,5 +178,5 @@ In the context of Apache Isis, this is very useful for contributed actions and m
 Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.
 You may find that adding actions will work, but adding new properties or collections is much less likely to.
 
-For details of setting up DCEVM, see the xref:setupguide:ROOT:intellij.adoc#setting-up-dcevm[corresponding section] in the IntelliJ documentation.
+For details of setting up DCEVM, see the xref:setupguide:intellij:hints-and-tips.adoc#setting-up-dcevm[corresponding section] in the IntelliJ documentation.
 
diff --git a/antora/components/setupguide/modules/hints-and-tips/attachments/.bash_functions b/antora/components/setupguide/modules/hints-and-tips/attachments/.bash_functions
new file mode 100644
index 0000000..f788d0b
--- /dev/null
+++ b/antora/components/setupguide/modules/hints-and-tips/attachments/.bash_functions
@@ -0,0 +1,61 @@
+#!/bin/bash
+
+#
+# adjust as necessary...
+#
+REPOSROOTS="/c/GITHUB /c/BITBUCKET /c/GITLAB"
+
+_repo_usage()
+{
+cat << EOF
+
+usage: $0 options repo
+
+OPTIONS:
+   [repo]        identify (using regexp) the repo from input file
+   
+EXAMPLES:
+    repo stack
+
+EOF
+}
+
+repo() {
+
+    local OPTIND grep_expression
+
+    grep_expression="$*"
+
+    if [ "Z${grep_expression}Z" == "ZZ" ]; then
+        _repo_usage
+        return 1
+    fi
+
+    for REPOSROOT in `echo $REPOSROOTS`
+    do
+        for a in $(ls $REPOSROOT/*/* -1d | \
+                   grep "$grep_expression" | \
+                   grep -v ^# )
+        do
+            echo $a
+        done
+    done
+
+    for REPOSROOT in `echo $REPOSROOTS`
+    do
+        for a in $(ls $REPOSROOT/*/* -1d | \
+                  grep "$grep_expression" | \
+                  grep -v ^# )
+        do
+            pushd "$a" >/dev/null || return 1
+            if [ $? != 0 ]; then
+                echo "" >&2
+                echo "">&2
+                echo "bad directory: $a" >&2
+                echo "">&2
+                return 1
+            fi
+            return 0
+        done
+    done
+}
diff --git a/antora/components/setupguide/modules/hints-and-tips/nav.adoc b/antora/components/setupguide/modules/hints-and-tips/nav.adoc
new file mode 100644
index 0000000..f276da7
--- /dev/null
+++ b/antora/components/setupguide/modules/hints-and-tips/nav.adoc
@@ -0,0 +1 @@
+* xref:setupguide:hints-and-tips:about.adoc[Hints & Tips]
diff --git a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips.adoc b/antora/components/setupguide/modules/hints-and-tips/pages/about.adoc
similarity index 73%
rename from antora/components/setupguide/modules/ROOT/pages/hints-and-tips.adoc
rename to antora/components/setupguide/modules/hints-and-tips/pages/about.adoc
index d9105a6..edd6692 100644
--- a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips.adoc
+++ b/antora/components/setupguide/modules/hints-and-tips/pages/about.adoc
@@ -1,6 +1,5 @@
 = Hints and Tips
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-:page-partial:
 
 
 
@@ -8,8 +7,9 @@ This chapter provides some solutions for problems we've encountered ourselves or
 
 
 
-include::hints-and-tips/datanucleus-enhancer.adoc[leveloffset=+1]
-include::hints-and-tips/enhance-only.adoc[leveloffset=+1]
-include::hints-and-tips/project-lombok.adoc[leveloffset=+1]
-include::hints-and-tips/enabling-logging.adoc[leveloffset=+1]
-include::hints-and-tips/how-run-fixtures-on-app-startup.adoc[leveloffset=+1]
+include::partial$datanucleus-enhancer.adoc[leveloffset=+1]
+include::partial$enhance-only.adoc[leveloffset=+1]
+include::partial$how-run-fixtures-on-app-startup.adoc[leveloffset=+1]
+include::partial$project-lombok.adoc[leveloffset=+1]
+include::partial$switching-between-directories.adoc[leveloffset=+1]
+
diff --git a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/datanucleus-enhancer.adoc b/antora/components/setupguide/modules/hints-and-tips/partials/datanucleus-enhancer.adoc
similarity index 97%
rename from antora/components/setupguide/modules/ROOT/pages/hints-and-tips/datanucleus-enhancer.adoc
rename to antora/components/setupguide/modules/hints-and-tips/partials/datanucleus-enhancer.adoc
index 02ba088..91c31b0 100644
--- a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/datanucleus-enhancer.adoc
+++ b/antora/components/setupguide/modules/hints-and-tips/partials/datanucleus-enhancer.adoc
@@ -48,7 +48,7 @@ If running on Windows, then there's a good chance you'll hit the http://msdn.mic
 In this case the `persistence.xml` file is mandatory rather than optional.
 
 This file is also required if you are using developing in Eclipse and relying on the DataNucleus plugin for Eclipse rather than the DataNucleus plugin for Maven.
-More information can be found xref:setupguide:ROOT:eclipse.adoc[here].
+More information can be found xref:setupguide:eclipse:about.adoc[here].
 ====
 
 
diff --git a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/enhance-only.adoc b/antora/components/setupguide/modules/hints-and-tips/partials/enhance-only.adoc
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/pages/hints-and-tips/enhance-only.adoc
rename to antora/components/setupguide/modules/hints-and-tips/partials/enhance-only.adoc
diff --git a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc b/antora/components/setupguide/modules/hints-and-tips/partials/how-run-fixtures-on-app-startup.adoc
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
rename to antora/components/setupguide/modules/hints-and-tips/partials/how-run-fixtures-on-app-startup.adoc
diff --git a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/project-lombok.adoc b/antora/components/setupguide/modules/hints-and-tips/partials/project-lombok.adoc
similarity index 81%
rename from antora/components/setupguide/modules/ROOT/pages/hints-and-tips/project-lombok.adoc
rename to antora/components/setupguide/modules/hints-and-tips/partials/project-lombok.adoc
index 08fe5b2..6252193 100644
--- a/antora/components/setupguide/modules/ROOT/pages/hints-and-tips/project-lombok.adoc
+++ b/antora/components/setupguide/modules/hints-and-tips/partials/project-lombok.adoc
@@ -30,13 +30,13 @@ private String name;
 
 Under the covers it is implemented as an annotation processor; it basically hooks into the Java compiler
 so that it can emit additional bytecode (eg for the getter and setter).
-See xref:setupguide:ROOT:intellij.adoc#other-settings-compiler[here] for details of setting up in IntelliJ (Eclipse has very similar support).
+See xref:setupguide:intellij:about.adoc#compiler-settings[here] for details of setting up in IntelliJ (Eclipse has very similar support).
 Apache Isis supports link:https://projectlombok.org/[Project Lombok], in that the annotations that would normally be placed on the getter (namely xref:refguide:applib-ant:Property.adoc[`Property`], xref:refguide:applib-ant:PropertyLayout.adoc[`@PropertyLayout`], xref:refguide:applib-ant:Collection.adoc[`@Collection`], xref:refguide:applib-ant:CollectionLayout.adoc[`@CollectionLayout`] and xref:refguide:applib-ant:MemberOrder.adoc[`@MemberOrder`]) can be placed on the field instead.
 
 
-There are plugins for Lombok for maven; it's just a matter of adding the required dependency.  To compile the code
-within your IDE (eg so that its compiler "knows" that there is, actually, a getter and setter) will require an
-Lombok plugin appropriate to that IDE.  See the link:https://projectlombok.org/download.html[Lombok download page] for more information.
+There are plugins for Lombok for maven; it's just a matter of adding the required dependency.
+To compile the code within your IDE (eg so that its compiler "knows" that there is, actually, a getter and setter) require an Lombok plugin appropriate to that IDE.
+See the link:https://projectlombok.org/download.html[Lombok download page] for more information.
 
 
 
diff --git a/antora/components/setupguide/modules/hints-and-tips/partials/switching-between-directories.adoc b/antora/components/setupguide/modules/hints-and-tips/partials/switching-between-directories.adoc
new file mode 100644
index 0000000..d573c1b
--- /dev/null
+++ b/antora/components/setupguide/modules/hints-and-tips/partials/switching-between-directories.adoc
@@ -0,0 +1,47 @@
+= Bash Utilities
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+
+
+== Switch between repos
+
+It's common to have to work with multiple git repositories, either making up different modules in your own application or perhaps third-party open source.
+
+You'll probably have these checked out in one or more directories; such as all github repos living under `/c/github/` (or `~/github`), all repos from bitbucket under `/c/bitbucket`, and so on.
+
+The link:{attachmentsdir}/.bash_functions[.bash_functions] provides a handy `repo` function that allows you to switch between these directories just by specifying a portion of the fully qualified name.
+
+Suppose you've cloned https://github.com/apache/isis-app-simpleapp to `/c/github/apache/isis-app-simpleapp`.
+Then:
+
+[source,sh]
+----
+$ repo simple
+----
+
+will use regex to match ".*simple.*", and therefore `cd` to the `/c/github/apache/isis-app-simpleapp` directory.
+
+
+To install:
+
+* copy the link:{attachmentsdir}/.bash_functions[.bash_functions] script to your home directory
+
+* modify the `REPOSROOTS` variable in the script
++
+[source,sh]
+.~/.bash_functions
+----
+...
+#
+# adjust as necessary...
+#
+REPOSROOTS="/c/GITHUB /c/BITBUCKET /c/GITLAB"
+...
+----
+
+* source the function from `.bashrc`:
++
+[source,sh]
+.~/.bashrc
+----
+. ./.bash_functions
+----
diff --git a/antora/components/setupguide/modules/ROOT/attachments/intellij/.gitignore b/antora/components/setupguide/modules/intellij/attachments/.gitignore
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/attachments/intellij/.gitignore
rename to antora/components/setupguide/modules/intellij/attachments/.gitignore
diff --git a/antora/components/setupguide/modules/ROOT/attachments/intellij/isis-settings-file-templates.jar b/antora/components/setupguide/modules/intellij/attachments/isis-settings-file-templates.jar
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/attachments/intellij/isis-settings-file-templates.jar
rename to antora/components/setupguide/modules/intellij/attachments/isis-settings-file-templates.jar
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/010-welcome.png b/antora/components/setupguide/modules/intellij/images/015-import-project/010-welcome.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/010-welcome.png
rename to antora/components/setupguide/modules/intellij/images/015-import-project/010-welcome.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/020-import-pom.png b/antora/components/setupguide/modules/intellij/images/015-import-project/020-import-pom.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/020-import-pom.png
rename to antora/components/setupguide/modules/intellij/images/015-import-project/020-import-pom.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/030-imported.png b/antora/components/setupguide/modules/intellij/images/015-import-project/030-imported.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/030-imported.png
rename to antora/components/setupguide/modules/intellij/images/015-import-project/030-imported.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/040-project-structure.png b/antora/components/setupguide/modules/intellij/images/015-import-project/040-project-structure.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/015-import-project/040-project-structure.png
rename to antora/components/setupguide/modules/intellij/images/015-import-project/040-project-structure.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/010-settings-import-jar.png b/antora/components/setupguide/modules/intellij/images/030-import-settings/010-settings-import-jar.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/010-settings-import-jar.png
rename to antora/components/setupguide/modules/intellij/images/030-import-settings/010-settings-import-jar.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/020-select-all.png b/antora/components/setupguide/modules/intellij/images/030-import-settings/020-select-all.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/020-select-all.png
rename to antora/components/setupguide/modules/intellij/images/030-import-settings/020-select-all.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/030-restart.png b/antora/components/setupguide/modules/intellij/images/030-import-settings/030-restart.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/030-restart.png
rename to antora/components/setupguide/modules/intellij/images/030-import-settings/030-restart.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/040-file-templates.png b/antora/components/setupguide/modules/intellij/images/030-import-settings/040-file-templates.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/040-file-templates.png
rename to antora/components/setupguide/modules/intellij/images/030-import-settings/040-file-templates.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/050-live-templates.png b/antora/components/setupguide/modules/intellij/images/030-import-settings/050-live-templates.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/030-import-settings/050-live-templates.png
rename to antora/components/setupguide/modules/intellij/images/030-import-settings/050-live-templates.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/040-other-settings-compiler/010-build-automatically.png b/antora/components/setupguide/modules/intellij/images/040-other-settings-compiler/010-build-automatically.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/040-other-settings-compiler/010-build-automatically.png
rename to antora/components/setupguide/modules/intellij/images/040-other-settings-compiler/010-build-automatically.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/040-other-settings-compiler/020-annotation-processor.png b/antora/components/setupguide/modules/intellij/images/040-other-settings-compiler/020-annotation-processor.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/040-other-settings-compiler/020-annotation-processor.png
rename to antora/components/setupguide/modules/intellij/images/040-other-settings-compiler/020-annotation-processor.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/042-other-settings-maven/010-maven-installation.png b/antora/components/setupguide/modules/intellij/images/042-other-settings-maven/010-maven-installation.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/042-other-settings-maven/010-maven-installation.png
rename to antora/components/setupguide/modules/intellij/images/042-other-settings-maven/010-maven-installation.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/042-other-settings-maven/020-maven-configuration.png b/antora/components/setupguide/modules/intellij/images/042-other-settings-maven/020-maven-configuration.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/042-other-settings-maven/020-maven-configuration.png
rename to antora/components/setupguide/modules/intellij/images/042-other-settings-maven/020-maven-configuration.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/044-other-settings-misc/010-auto-import.png b/antora/components/setupguide/modules/intellij/images/044-other-settings-misc/010-auto-import.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/044-other-settings-misc/010-auto-import.png
rename to antora/components/setupguide/modules/intellij/images/044-other-settings-misc/010-auto-import.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/060-troubleshooting/010-duplicate-classes.png b/antora/components/setupguide/modules/intellij/images/060-troubleshooting/010-duplicate-classes.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/060-troubleshooting/010-duplicate-classes.png
rename to antora/components/setupguide/modules/intellij/images/060-troubleshooting/010-duplicate-classes.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/002-compiler-exclude.png b/antora/components/setupguide/modules/intellij/images/070-advanced/002-compiler-exclude.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/002-compiler-exclude.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/002-compiler-exclude.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/004-gradle-output.png b/antora/components/setupguide/modules/intellij/images/070-advanced/004-gradle-output.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/004-gradle-output.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/004-gradle-output.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/005-gradle-output.png b/antora/components/setupguide/modules/intellij/images/070-advanced/005-gradle-output.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/005-gradle-output.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/005-gradle-output.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/006-livereload-js.png b/antora/components/setupguide/modules/intellij/images/070-advanced/006-livereload-js.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/006-livereload-js.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/006-livereload-js.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/010-dcevm-list-of-found-jdk-installations.png b/antora/components/setupguide/modules/intellij/images/070-advanced/010-dcevm-list-of-found-jdk-installations.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/010-dcevm-list-of-found-jdk-installations.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/010-dcevm-list-of-found-jdk-installations.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/020-dcevm-once-installed.png b/antora/components/setupguide/modules/intellij/images/070-advanced/020-dcevm-once-installed.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/020-dcevm-once-installed.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/020-dcevm-once-installed.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/030-dcevm-intellij-project-structure.png b/antora/components/setupguide/modules/intellij/images/070-advanced/030-dcevm-intellij-project-structure.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/030-dcevm-intellij-project-structure.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/030-dcevm-intellij-project-structure.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/040-dcevm-run-configuration.png b/antora/components/setupguide/modules/intellij/images/070-advanced/040-dcevm-run-configuration.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/070-advanced/040-dcevm-run-configuration.png
rename to antora/components/setupguide/modules/intellij/images/070-advanced/040-dcevm-run-configuration.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/010-maven-modules-view.png b/antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/010-maven-modules-view.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/010-maven-modules-view.png
rename to antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/010-maven-modules-view.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/020-adding-another-module.png b/antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/020-adding-another-module.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/020-adding-another-module.png
rename to antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/020-adding-another-module.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/030-other-module-added.png b/antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/030-other-module-added.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/030-other-module-added.png
rename to antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/030-other-module-added.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/040-ignoring-modules.png b/antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/040-ignoring-modules.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/040-ignoring-modules.png
rename to antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/040-ignoring-modules.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/050-ignoring-modules-2.png b/antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/050-ignoring-modules-2.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/050-ignoring-modules-2.png
rename to antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/050-ignoring-modules-2.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/060-ignored-modules.png b/antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/060-ignored-modules.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/100-maven-module-mgmt/060-ignored-modules.png
rename to antora/components/setupguide/modules/intellij/images/100-maven-module-mgmt/060-ignored-modules.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/005-datanucleus-enhance-run-configuration.png b/antora/components/setupguide/modules/intellij/images/110-running-the-app/005-datanucleus-enhance-run-configuration.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/005-datanucleus-enhance-run-configuration.png
rename to antora/components/setupguide/modules/intellij/images/110-running-the-app/005-datanucleus-enhance-run-configuration.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/010-run-configuration.png b/antora/components/setupguide/modules/intellij/images/110-running-the-app/010-run-configuration.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/010-run-configuration.png
rename to antora/components/setupguide/modules/intellij/images/110-running-the-app/010-run-configuration.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/030-running-unit-tests.png b/antora/components/setupguide/modules/intellij/images/110-running-the-app/030-running-unit-tests.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/030-running-unit-tests.png
rename to antora/components/setupguide/modules/intellij/images/110-running-the-app/030-running-unit-tests.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/040-running-unit-tests-run-configuration.png b/antora/components/setupguide/modules/intellij/images/110-running-the-app/040-running-unit-tests-run-configuration.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/040-running-unit-tests-run-configuration.png
rename to antora/components/setupguide/modules/intellij/images/110-running-the-app/040-running-unit-tests-run-configuration.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/045-running-integ-tests.png b/antora/components/setupguide/modules/intellij/images/110-running-the-app/045-running-integ-tests.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/045-running-integ-tests.png
rename to antora/components/setupguide/modules/intellij/images/110-running-the-app/045-running-integ-tests.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/050-running-integration-tests-run-configuration.png b/antora/components/setupguide/modules/intellij/images/110-running-the-app/050-running-integration-tests-run-configuration.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/110-running-the-app/050-running-integration-tests-run-configuration.png
rename to antora/components/setupguide/modules/intellij/images/110-running-the-app/050-running-integration-tests-run-configuration.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/010-file-project-structure.png b/antora/components/setupguide/modules/intellij/images/200-project-sdk/010-file-project-structure.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/010-file-project-structure.png
rename to antora/components/setupguide/modules/intellij/images/200-project-sdk/010-file-project-structure.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/020-select-jdk.png b/antora/components/setupguide/modules/intellij/images/200-project-sdk/020-select-jdk.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/020-select-jdk.png
rename to antora/components/setupguide/modules/intellij/images/200-project-sdk/020-select-jdk.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/030-select-jdk-directory.png b/antora/components/setupguide/modules/intellij/images/200-project-sdk/030-select-jdk-directory.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/030-select-jdk-directory.png
rename to antora/components/setupguide/modules/intellij/images/200-project-sdk/030-select-jdk-directory.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/040-set-project-level.png b/antora/components/setupguide/modules/intellij/images/200-project-sdk/040-set-project-level.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/040-set-project-level.png
rename to antora/components/setupguide/modules/intellij/images/200-project-sdk/040-set-project-level.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/050-isis-language-level-7.png b/antora/components/setupguide/modules/intellij/images/200-project-sdk/050-isis-language-level-7.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/050-isis-language-level-7.png
rename to antora/components/setupguide/modules/intellij/images/200-project-sdk/050-isis-language-level-7.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/060-app-language-level-8.png b/antora/components/setupguide/modules/intellij/images/200-project-sdk/060-app-language-level-8.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/200-project-sdk/060-app-language-level-8.png
rename to antora/components/setupguide/modules/intellij/images/200-project-sdk/060-app-language-level-8.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/010-new-project.png b/antora/components/setupguide/modules/intellij/images/250-new-project/010-new-project.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/010-new-project.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/010-new-project.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/020-new-project-name.png b/antora/components/setupguide/modules/intellij/images/250-new-project/020-new-project-name.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/020-new-project-name.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/020-new-project-name.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/030-new-project-new-window.png b/antora/components/setupguide/modules/intellij/images/250-new-project/030-new-project-new-window.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/030-new-project-new-window.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/030-new-project-new-window.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/040-new-module-from-existing-sources.png b/antora/components/setupguide/modules/intellij/images/250-new-project/040-new-module-from-existing-sources.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/040-new-module-from-existing-sources.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/040-new-module-from-existing-sources.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/050-specify-source-folder.png b/antora/components/setupguide/modules/intellij/images/250-new-project/050-specify-source-folder.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/050-specify-source-folder.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/050-specify-source-folder.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/060-import-using-maven.png b/antora/components/setupguide/modules/intellij/images/250-new-project/060-import-using-maven.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/060-import-using-maven.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/060-import-using-maven.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/070-import-module-settings.png b/antora/components/setupguide/modules/intellij/images/250-new-project/070-import-module-settings.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/070-import-module-settings.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/070-import-module-settings.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/080-maven-profiles.png b/antora/components/setupguide/modules/intellij/images/250-new-project/080-maven-profiles.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/080-maven-profiles.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/080-maven-profiles.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/090-maven-coordinates.png b/antora/components/setupguide/modules/intellij/images/250-new-project/090-maven-coordinates.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/090-maven-coordinates.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/090-maven-coordinates.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/100-annotation-processing.png b/antora/components/setupguide/modules/intellij/images/250-new-project/100-annotation-processing.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/100-annotation-processing.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/100-annotation-processing.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/110-parameter8.png b/antora/components/setupguide/modules/intellij/images/250-new-project/110-parameter8.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/110-parameter8.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/110-parameter8.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/120-clean-generate-sources.png b/antora/components/setupguide/modules/intellij/images/250-new-project/120-clean-generate-sources.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/250-new-project/120-clean-generate-sources.png
rename to antora/components/setupguide/modules/intellij/images/250-new-project/120-clean-generate-sources.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/300-paraname8-support/010-configuring-the-compiler.png b/antora/components/setupguide/modules/intellij/images/300-paraname8-support/010-configuring-the-compiler.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/300-paraname8-support/010-configuring-the-compiler.png
rename to antora/components/setupguide/modules/intellij/images/300-paraname8-support/010-configuring-the-compiler.png
diff --git a/antora/components/setupguide/modules/ROOT/images/intellij-idea/400-running-integtests/run-debug-configuration-single-module.png b/antora/components/setupguide/modules/intellij/images/400-running-integtests/run-debug-configuration-single-module.png
similarity index 100%
rename from antora/components/setupguide/modules/ROOT/images/intellij-idea/400-running-integtests/run-debug-configuration-single-module.png
rename to antora/components/setupguide/modules/intellij/images/400-running-integtests/run-debug-configuration-single-module.png
diff --git a/antora/components/setupguide/modules/intellij/nav.adoc b/antora/components/setupguide/modules/intellij/nav.adoc
new file mode 100644
index 0000000..a014be6
--- /dev/null
+++ b/antora/components/setupguide/modules/intellij/nav.adoc
@@ -0,0 +1 @@
+* xref:setupguide:intellij:about.adoc[Using IntelliJ]
diff --git a/antora/components/setupguide/modules/intellij/pages/about.adoc b/antora/components/setupguide/modules/intellij/pages/about.adoc
new file mode 100644
index 0000000..4b007d0
--- /dev/null
+++ b/antora/components/setupguide/modules/intellij/pages/about.adoc
@@ -0,0 +1,189 @@
+= IntelliJ IDEA
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+
+This section describes how to install and setup JetBrains' IntelliJ IDEA, then how to import an application into IntelliJ and run it.
+
+NOTE: This material does not constitute an endorsement; JetBrains is not affiliated to Apache Software Foundation in any way.
+JetBrains does however provide complimentary copies of the IntelliJ IDE to Apache committers.
+
+
+== Installing and Importing
+
+This section covers installation and setup.
+These notes/screenshots were prepared using IntelliJ IDEA Community Edition 2019.3, but is believed to be compatible with more recent versions/other editions of the IDE.
+
+=== Download and Install
+
+https://www.jetbrains.com/idea/download/[Download] latest version of IntelliJ Community Edition, and install.
+
+
+=== Import Project
+
+In IntelliJ a project can contain multiple modules; these need not be physically located together.
+
+Download either the xref:docs:starters:helloworld.adoc[HelloWorld] or xref:docs:starters:simpleapp.adoc[SimpleApp] starter app to your filesystem.
+
+From the welcome screen, select "import project":
+
+image::015-import-project/010-welcome.png[width="400px",link="{imagesdir}/015-import-project/010-welcome.png"]
+
+Navigate to the top-level pom.xml of the starter app:
+
+image::015-import-project/020-import-pom.png[width="300px",link="{imagesdir}/015-import-project/020-import-pom.png"]
+
+Project imported:
+
+image::015-import-project/030-imported.png[width="800px",link="{imagesdir}/015-import-project/030-imported.png"]
+Start off by creating a new project:
+
+
+Use menu:File[Project Structure] to confirm that JDK 8 is configured:
+
+image::015-import-project/040-project-structure.png[width="600px",link="{imagesdir}/015-import-project/040-project-structure.png"]
+
+
+
+== Configuring
+
+//include::partial$UNUSED/file-templates.adoc[leveloffset=+2]
+//include::partial$UNUSED/live-templates.adoc[leveloffset=+2]
+//include::partial$UNUSED/coding-standards.adoc[leveloffset=+2]
+
+=== Compiler Settings
+
+There are a number of compiler settings that influence the compiler.
+We highly recommend you set these.
+
+On the *Compiler* Settings page, ensure that `build automatically` is enabled (and optionally `compile independent modules in parallel`):
+
+.IntelliJ Compiler Settings
+image::040-other-settings-compiler/010-build-automatically.png[width="700px",link="{imagesdir}/040-other-settings-compiler/010-build-automatically.png"]
+
+
+On the *Annotation Processors* page, confirm that these are enabled for all of the `packaging=jar` modules (in other words, those that contain Java and have a `src/main/java` directory):
+
+.IntelliJ Annotation Processor Settings
+image::040-other-settings-compiler/020-annotation-processor.png[width="700px",link="{imagesdir}/040-other-settings-compiler/020-annotation-processor.png"]
+
+This setting enables the generation of the `Q*` classes for DataNucleus type-safe queries, as well as being required for frameworks such as xref:setupguide:ROOT:hints-and-tips.adoc#project-lombok[Project Lombok].
+
+
+=== Maven Settings
+
+There are also some other settings for Maven that we recommend you adjust (though these are less critical):
+
+On the Maven settings page:
+
+.IntelliJ Maven Settings - Installation
+image::042-other-settings-maven/010-maven-installation.png[width="700px",link="{imagesdir}/042-other-settings-maven/010-maven-installation.png"]
+
+Still on the Maven settings page, configure as follows:
+
+.IntelliJ Maven Settings - Configuration
+image::042-other-settings-maven/020-maven-configuration.png[width="700px",link="{imagesdir}/042-other-settings-maven/020-maven-configuration.png"]
+
+=== Editor Settings
+
+On the *Auto Import* settings page, check the `optimize imports on the fly` and `add unambiguous imports on the fly`
+
+.IntelliJ Auto Import Setting
+image::044-other-settings-misc/010-auto-import.png[width="700px",link="{imagesdir}/044-other-settings-misc/010-auto-import.png"]
+
+You might also want to exclude certain packages or classes from auto-import, for example:
+
+* `java.awt.*`
+* `javax.swing.*`
+* `lombok.experimental.*`
+
+== Plugins
+
+You might want to set up some additional plugins.
+You can do this using `File > Settings > Plugins` (or equivalently `File > Other Settings > Configure Plugins`).
+
+Highly recommended are:
+
+* link:https://plugins.jetbrains.com/plugin/7179?pr=idea[Maven Helper] plugin
+
+* link:https://plugins.jetbrains.com/plugin/7391-asciidoc[AsciiDoctor] plugin
++
+Extremely useful if you are doing any authoring of documents (plugin's git repo is link:https://github.com/asciidoctor/asciidoctor-intellij-plugin[here])
+
+* link:https://plugins.jetbrains.com/plugin/6317-lombok[Lombok] plugin
++
+If you plan to use link:https://projectlombok.org[Project Lombok] to reduce boilerplate.
+
+
+
+
+== Running
+
+Let's see how to run both the app and the tests.
+
+=== Running the App
+
+We run the application by creating a Run configuration, using `Run > Edit Configurations`.
+
+There is one complication.
+DataNucleus requires that all entities are bytecode enhanced.
+When building from the command line using Maven, the `datanucleus:enhance` Maven plugin takes care of this.
+When building within IntelliJ, though, there is no similar plugin.
+
+However, this is easily solved: we can just have IntelliJ run the enhance as a separate run configuration before the run configuration that runs the app itself.
+
+First, set up the run configuration to do the enhance:
+
+.Run Configuration to enhance the entities
+image::110-running-the-app/005-datanucleus-enhance-run-configuration.png[width="700px",link="{imagesdir}/110-running-the-app/005-datanucleus-enhance-run-configuration.png"]
+
+TIP: Check "work offline" (on the General tab) to speed this up slightly.
+
+[WARNING]
+====
+If on Windows you encounter a "The command line is too long" error, then set '-Dfork=false' as a VM option (on the Runner tab).
+====
+
+Then, set up the run configuration for the app.
+Note how it runs the enhance configuration first:
+
+.Run Configuration to run the app
+image::110-running-the-app/010-run-configuration.png[width="700px",link="{imagesdir}/110-running-the-app/010-run-configuration.png"]
+
+You should now be able to run the app using `Run > Run Configuration`.
+The same configuration can also be used to debug the app if you so need.
+
+
+=== Running the Unit Tests
+
+The easiest way to run the unit tests is just to right click on the relevant package in the _Project Window_, and choose run unit tests.
+Hopefully your tests will pass (!).
+
+.Running Unit Tests from Project Explorer
+image::110-running-the-app/030-running-unit-tests.png[width="300px",link="{imagesdir}/110-running-the-app/030-running-unit-tests.png"]
+
+As a side-effect, this will create a run configuration, very similar to the one we manually created for the main app:
+
+.Unit Tests Run Configuration
+image::110-running-the-app/040-running-unit-tests-run-configuration.png[width="700px",link="{imagesdir}/110-running-the-app/040-running-unit-tests-run-configuration.png"]
+
+Thereafter, you should run units by selecting this configuration (if you use the right click approach you'll end up with lots of run configurations, all similar).
+
+=== Running the Integration Tests
+
+Integration tests can be run in the same way as unit tests, however the module must also have been enhanced.
+
+One approach is to initially run the tests use the right click on the `integtests` module:
+
+.Running Integ Tests from Project Explorer
+image::110-running-the-app/045-running-integ-tests.png[width="400px",link="{imagesdir}/110-running-the-app/045-running-integ-tests.png"]
+
+The tests might fail because the entities won't have been enhanced.
+However, we can then easily update the run configuration to run the datanucleus enhancer goal (same as when running the application):
+
+.Integration Tests Run Configuration
+image::110-running-the-app/050-running-integration-tests-run-configuration.png[width="700px",link="{imagesdir}/110-running-the-app/050-running-integration-tests-run-configuration.png"]
+
+
+CAUTION: Make sure that the `search for tests` radio button is set to `In single module`.
+If this radio button is set to one of the other options then you may obtain class loading issues.
+
+
diff --git a/antora/components/setupguide/modules/intellij/pages/hints-and-tips.adoc b/antora/components/setupguide/modules/intellij/pages/hints-and-tips.adoc
new file mode 100644
index 0000000..5ead825
--- /dev/null
+++ b/antora/components/setupguide/modules/intellij/pages/hints-and-tips.adoc
@@ -0,0 +1,111 @@
+= Hints and Tips
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+
+
+== Keyboard Cheat Sheets
+
+You can download 1-page PDFs cheat sheets for IntelliJ's keyboard shortcuts:
+* for link:https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard.pdf[Windows]
+* for link:https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard_Mac.pdf[MacOS]
+
+Probably the most important shortcut on them is for `Find Action`:
+- `ctrl-shift-A` on Windows
+- `cmd-shift-A` on MacOS.
+
+This will let you search for any action just by typing its name.
+
+== Switch between Tools & Editors
+
+The Tool Windows are the views around the editor (to left, bottom and right).
+It's possible to move these around to your preferred locations.
+
+* Use `alt-1` through `alt-9` (or `cmd-1` through `alt-9`) to select the tool windows
+** Press it twice and the tool window will hide itself; so can use to toggle
+* If in the _Project Window_ (say) and hit enter on a file, then it will be shown in the editor, but (conveniently) the focus remains in the tool window.
+To switch to the editor, just press `Esc`.
+** If in the _Terminal Window_, you'll need to press `Shift-Esc`.
+* If on the editor and want to locate the file in (say) the _Project Window_, use `alt-F1`.
+* To change the size of any tool window, use `ctrl-shift-arrow`
+
+Using these shortcuts you can easily toggle between the tool windows and the editor, without using the mouse.
+Peachy!
+
+== Navigating Around
+
+For all of the following, you don't need to type every letter, typing "ab" will actually search for ".*a.*b.*".
+
+* to open classes or files or methods that you know the name of:
+** `ctrl-N` to open class
+** `ctrl-shift-N` to open a file
+** (bit fiddly this) `ctrl-shift-alt-N` to search for any symbol.
+* open up dialog of recent files: `ctrl-E`
+* search for any file: `shift-shift`
+
+Navigating around:
+
+* find callers of a method (the call hierarchy): `ctrl-alt-H`
+* find subclasses or overrides: `ctrl-alt-B`
+* find superclasses/interface/declaration: `ctrl-B`
+
+Viewing the structure (ie outline) of a class
+* `ctrl-F12` will pop-up a dialog showing all members
+** hit `ctrl-F12` again to also see inherited members
+
+== Editing
+
+* Extend selection using `ctrl-W`
+** and contract it down again using `ctrl-shift-W`
+* to duplicate a line, it's `ctrl-D`
+** if you have some text selected (or even some lines), it'll actually duplicate the entire selection
+* to delete a line, it's `ctrl-X`
+* to move a line up or down: `shift-alt-up` and `shift-alt-down`
+** if you have selected several lines, it'll move them all togethe
+* `ctrl-shift-J` can be handy for joining lines together
+** just hit enter to split them apart (even in string quotes; IntelliJ will "do the right thing")
+
+== Intentions and Code Completion
+
+Massively useful is the "Intentions" popup; IntelliJ tries to guess what you might want to do.
+You can activate this using`alt-enter`, whenever you see a lightbulb/tooltip in the margin of the current line.
+
+Code completion usually happens whenever you type '.'.
+You can also use `ctrl-space` to bring these up.
+
+In certain circumstances (eg in methods0) you can also type `ctrl-shift-space` to get a smart list of methods etc that you might want to call.
+Can be useful.
+
+Last, when invoking a method, use `ctrl-P` to see the parameter types.
+
+== Refactoring
+
+Loads of good stuff on the `Refactor` menu; most used are:
+
+* Rename (`shift-F6`)
+* Extract
+** method: `ctrl-alt-M`
+** variable: `ctrl-alt-V`
+* Inline method/variable: `ctrl-alt-N`
+* Change signature
+
+If you can't remember all those shortcuts, just use `ctrl-shift-alt-T` (might want to rebind that to something else!) and get a context-sensitive list of refactorings available for the currently selected object
+
+== Troubleshooting
+
+When a Maven module is imported, IntelliJ generates its own project files (suffix `.ipr`), and the application is actually built from that.
+
+Occasionally these don't keep in sync (even if auto-import of Maven modules has been enabled).
+
+To fix the issue, try:
+
+* reimport module
+* rebuild selected modules/entire project
+* remove and then re-add the project
+* restart, invalidating caches
+* hit StackOverflow (!)
+
+One thing worth knowing; IntelliJ actively scans the filesystem all the time.
+It's therefore (almost always) fine to build the app from the Maven command line; IntelliJ will detect the changes and keep in sync.
+If you want to force that, use `File > Synchronize`, `ctrl-alt-Y`.
+
+
+// include::partial$UNUSED/faster-turnaround-times.adoc[]
diff --git a/antora/components/setupguide/modules/ROOT/pages/about.adoc b/antora/components/setupguide/modules/intellij/partials/UNUSED/coding-standards.adoc
similarity index 65%
copy from antora/components/setupguide/modules/ROOT/pages/about.adoc
copy to antora/components/setupguide/modules/intellij/partials/UNUSED/coding-standards.adoc
index 6fad8a6..aa62e87 100644
--- a/antora/components/setupguide/modules/ROOT/pages/about.adoc
+++ b/antora/components/setupguide/modules/intellij/partials/UNUSED/coding-standards.adoc
@@ -1,11 +1,9 @@
-= Setup Guide
+= Coding Standards
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-:page-role: -toc
 
+CAUTION: seem to have mislaid this file... would need verifying/updating anyway, I think.
 
-The vast majority of Java developers use an IDE to assist with developing their code, and we highly recommend that you do likewise as you develop your Apache Isis applications using an IDE.
-
-This guide explains how to setup your IDE so you can effectively and efficiently develop your Apache Isis apps.
-
-The guide also provides a number of general hints-n-tips.
+Next, we suggest you import settings for standard ASF/Apache Isis coding conventions.
+This file is also provided as a settings file, namely *link:{attachmentsdir}/intellij/isis-settings-code-style.jar[isis-settings-code-style.jar]*.
+Download and import (as for the above settings JAR files).
 
diff --git a/antora/components/setupguide/modules/intellij/partials/UNUSED/faster-turnaround-times.adoc b/antora/components/setupguide/modules/intellij/partials/UNUSED/faster-turnaround-times.adoc
new file mode 100644
index 0000000..9d9df9e
--- /dev/null
+++ b/antora/components/setupguide/modules/intellij/partials/UNUSED/faster-turnaround-times.adoc
@@ -0,0 +1,196 @@
+= Faster Turnaround Times
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+This section describes how to install and setup JetBrains' IntelliJ IDEA, then how to import an application into IntelliJ and run it.
+
+
+In this section are several options that will reduce the time it takes between making a source code edit and seeing the results in the running app. code/build/deploy/review feedback loop.
+
+== Using Grade to compile/enhance
+
+Running an Apache Isis application requires that the DataNucleus enhancer runs on the compiled bytecode.
+As described xref:setupguide:intellij:about.adoc#running-the-app[above], the recommended way to do this with IntelliJ is to use a Run configuration that runs the enhancer goal prior to launch.
+
+Alternative, you can use the following `build.gradle` script in your `dom` module:
+
+[source,groovy]
+.`build.gradle`
+----
+apply plugin: 'java'
+apply plugin: 'tangram.tools'
+sourceCompatibility = 1.8
+targetCompatibility = 1.8
+version = (new XmlParser()).parse('pom.xml').parent.version.text()
+buildscript {
+  repositories {
+    maven { url "http://oss.jfrog.org/artifactory/oss-snapshot-local" }
+    jcenter()
+  }
+  dependencies {
+    classpath 'tangram:gradle-plugin:1.1.2'
+  }
+}
+repositories {
+    mavenLocal()
+    maven { url "http://oss.jfrog.org/artifactory/oss-snapshot-local" }
+    jcenter()
+}
+dependencies {
+    compile group: 'org.apache.isis.core', name: 'isis-core-applib', version: version
+}
+task copyClasses << {
+    copy {
+        from 'build/classes/main'
+        into 'target/classes'
+    }
+}
+----
+
+The script is intended to be in the background as a daemon while editing/developing; whenever a change is made to any source code, gradle will automatically compile _and_ enhance the code.
+In this way it eliminates the need to start up Maven and run the enhancer goal.
+
+To use, you must disable the IntelliJ's automatic building of the 'dom' project.
+This is done using:
+`File > Settings > Build, Execution, Deployment > Compiler > Excludes`, and then exclude the `.../dom/src/main/java`
+directory:
+
+image::070-advanced/002-compiler-exclude.png[width="800px",link="{imagesdir}/070-advanced/002-compiler-exclude.png"]
+
+
+The script can be run in the background using:
+
+[source,bash]
+----
+gradle -t --offline &
+----
+
+from the command line (in the `dom` module).
+
+image::070-advanced/004-gradle-output.png[width="600px",link="{imagesdir}/070-advanced/004-gradle-output.png"]
+
+== Using Gradle for liveReload
+
+Similarly, gradle can be run to reduce the turn-around time when tweaking the UI (defined by the
+xref:vw:ROOT:layout.adoc#file-based[`*.layout.xml`] file for each domain class), when the app is running.
+
+The framework will automatically notice any changes to `.layout.xml` files, but these are read from the classpath (the `target/classes` directory), not the source path.
+With IntelliJ these can be copied over manually by invoking `Run > Reload Changed Classes`.
+Once the browser is refreshed, the new layout will be rendered.
+
+[NOTE]
+====
+We've occasionally noticed that this interferes with Wicket's own javascript - switching tabs becomes unresponsive.
+The work-around is just to reload the page.
+====
+
+To reduce the turn-around time there are therefore two steps to be automated:
+
+* the copying of the `.layout.xml` files over to the `target/classes` directory
+* the triggering of a page refresh by the browser.
+
+The `layouts.gradle` script takes care of the first of these; whenever a change is made to any `.layout.xml` file, gradle will automatically copy over the file to the `target/classes` directory:
+
+[source,groovy]
+.`layouts.gradle`
+----
+defaultTasks 'copyLayouts'
+task copyLayouts(type:Copy) {
+    from 'src/main/java'
+    into 'target/classes'
+    include '**/*.layout.xml'
+}
+----
+
+Similarly, the `liveReload.gradle` script takes care of the browser refresh:
+
+[source,groovy]
+.`liveReload.gradle`
+----
+defaultTasks 'liveReload'
+buildscript {
+    repositories {
+        jcenter()
+    }
+    dependencies {
+        classpath 'org.kordamp.gradle:livereload-gradle-plugin:0.2.1'
+    }
+}
+apply plugin: 'org.kordamp.gradle.livereload'
+liveReload {
+    docRoot new File('target/classes').canonicalPath
+}
+----
+
+These scripts can be run together using:
+
+[source,bash]
+----
+gradle -t --offline -b layouts.gradle &
+gradle -t --offline -b liveReload.gradle &
+----
+
+from the command line (in the `dom` module):
+
+
+image::070-advanced/005-gradle-output.png[width="600px",link="{imagesdir}/070-advanced/005-gradle-output.png"]
+
+
+Live reload also requires that the `isis.viewer.wicket.liveReloadUrl` configuration property is set appropriately:
+
+[source,ini]
+.`viewer_wicket.properties`
+----
+isis.viewer.wicket.liveReloadUrl=http://localhost:35729/livereload.js?snipver=1
+----
+
+You can confirm the script is loaded correctly using the web browser's development tools, eg:
+
+
+image::070-advanced/006-livereload-js.png[width="800px",link="{imagesdir}/070-advanced/006-livereload-js.png"]
+
+== Setting up DCEVM
+
+link:http://github.com/dcevm/dcevm[DCEVM] enhances the JVM with true hot-swap adding/removing of methods as well as more reliable hot swapping of the implementation of existing methods.
+
+In the context of Apache Isis, this is very useful for contributed actions and mixins and also view models; you should then be able to write these actions and have them be picked up without restarting the application.
+
+Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.
+You may find that adding actions will work, but adding new properties or collections is much less likely to.
+
+To set up DCEVM, download the appropriate JAR from the link:https://dcevm.github.io/[github page], and run the installer.
+For example:
+
+[source,bash]
+----
+java -jar DCEVM-light-8u51-installer.jar
+----
+
+[TIP]
+====
+Be sure to run with appropriate privileges to be able to write to the installation directories of the JDK. If running on Windows, that means running as `Administrator`.
+====
+
+After a few seconds this will display a dialog listing all installations of JDK that have been found:
+
+image::070-advanced/010-dcevm-list-of-found-jdk-installations.png[width="600px",link="{imagesdir}/070-advanced/010-dcevm-list-of-found-jdk-installations.png"]
+
+
+Select the corresponding installation, and select `Replace by DCEVM`.
+
+image::070-advanced/020-dcevm-once-installed.png[width="600px",link="{imagesdir}/070-advanced/020-dcevm-once-installed.png"]
+
+
+In IntelliJ, register the JDK in `File > Project Structure` dialog:
+
+image::070-advanced/030-dcevm-intellij-project-structure.png[width="600px",link="{imagesdir}/070-advanced/030-dcevm-intellij-project-structure.png"]
+
+Finally, in the run configuration, select the patched JDK:
+
+image::070-advanced/040-dcevm-run-configuration.png[width="600px",link="{imagesdir}/070-advanced/040-dcevm-run-configuration.png"]
+
+== Setting up JRebel
+
+See the repo for the (non-ASF) link:https://github.com/isisaddons/isis-jrebel-plugin[Isis JRebel] plugin.
+
+Note that JRebel is a commercial product, requiring a license.
+At the time of writing there is also currently a non-commercial free license (though note this comes with some usage conditions).
+
diff --git a/antora/components/setupguide/modules/intellij/partials/UNUSED/file-templates.adoc b/antora/components/setupguide/modules/intellij/partials/UNUSED/file-templates.adoc
new file mode 100644
index 0000000..c5787dd
--- /dev/null
+++ b/antora/components/setupguide/modules/intellij/partials/UNUSED/file-templates.adoc
@@ -0,0 +1,37 @@
+= File Templates
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
+:page-partial:
+
+
+Next we recommend you import a set of standard file templates.
+These are used to create new classes or supporting files:
+
+.File templates
+image::030-import-settings/040-file-templates.png[width="400px",link="{imagesdir}/030-import-settings/040-file-templates.png"]
+
+The file templates are provided as a settings JAR file, namely *link:{attachmentsdir}/isis-settings-file-templates.jar[isis-settings-file-templates.jar]*.
+Download this file.
+
+Next, import using `File > Import Settings`, specifying the directory that you have downloaded the file to:
+
+.IntelliJ Import Settings - Specify JAR file
+image::030-import-settings/010-settings-import-jar.png[width="400px",link="{imagesdir}/030-import-settings/010-settings-import-jar.png"]
+
+Select all the categories (there should just be one), and hit OK. then hit restart.
+
+[WARNING]
+====
+If importing into IntelliJ 2017.2.3 two categories are shown - "File templates" and "File templates (schemes)".
+Select all the categories.
+
+Apparently no categories are shown if importing into IntelliJ 2016.1.1 Community Edition (and perhaps other 2016 versions).
+The file does import ok into IntelliJ 15.0.x, so we think this is a bug in the 2016 version.
+
+The workaround is to extract the `.jar` file locally and copy the files into IntelliJ's `config` directory, somewhere in your home directory:
+
+* Windows `<User home>\.IdeaIC2016\config`
+* Linux `~/..IdeaIC2016/config`
+* Mac OS `~/Library/Preferences/IdeaIC2016`
+
+====
+
diff --git a/antora/components/setupguide/modules/ROOT/pages/ide.adoc b/antora/components/setupguide/modules/intellij/partials/UNUSED/live-templates.adoc
similarity index 53%
rename from antora/components/setupguide/modules/ROOT/pages/ide.adoc
rename to antora/components/setupguide/modules/intellij/partials/UNUSED/live-templates.adoc
index 151d51e..eb3061c 100644
--- a/antora/components/setupguide/modules/ROOT/pages/ide.adoc
+++ b/antora/components/setupguide/modules/intellij/partials/UNUSED/live-templates.adoc
@@ -1,16 +1,19 @@
-[[ide]]
-= Using an IDE
+= Live Templates
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
-:page-partial:
 
 
+We also recommend you import a set of live templates.
+These are used to add new methods to existing classes:
 
+.Live templates
+image::030-import-settings/050-live-templates.png[width="600px",link="{imagesdir}/030-import-settings/050-live-templates.png"]
 
-The vast majority of Java developers use an IDE to assist with developing their code, and we highly recommend that you do likewise as you develop your Apache Isis applications using an IDE.
-Apache Isis is built with Maven, and all modern IDEs can import Maven projects.
+The live templates have a prefix of either:
 
-This chapter shows how to setup and use the IntelliJ IDEA.
+* `is` : for Apache Isis domain objects
+* `ju` : for JUnit tests
+* `jm` : for JMock mocks or libraries
 
+The live templates are also provided as a settings JAR file, namely *link:{attachmentsdir}/resources/intellij/isis-settings-live-templates.jar[isis-settings-live-templates.jar]*.
+Download and import (as for the previous settings JAR files).
 
-include::intellij.adoc[leveloffset=+1]
-//include::eclipse.adoc[leveloffset=+1]
diff --git a/antora/playbooks/site-comguide.yml b/antora/playbooks/site-comguide.yml
index eb56d98..8781e5b 100644
--- a/antora/playbooks/site-comguide.yml
+++ b/antora/playbooks/site-comguide.yml
@@ -13,6 +13,24 @@ content:
     - url: .
       start_path: antora/components/comguide # comguide
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 
 
diff --git a/antora/playbooks/site-conguide.yml b/antora/playbooks/site-conguide.yml
index e3df1be..9f2d58b 100644
--- a/antora/playbooks/site-conguide.yml
+++ b/antora/playbooks/site-conguide.yml
@@ -13,6 +13,24 @@ content:
     - url: .
       start_path: antora/components/conguide # conguide
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 
 
diff --git a/antora/playbooks/site-core.yml b/antora/playbooks/site-core.yml
index 0e36c3e..f15fa0c 100644
--- a/antora/playbooks/site-core.yml
+++ b/antora/playbooks/site-core.yml
@@ -10,7 +10,9 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
-
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
 
 # core
     - url: .
@@ -40,9 +42,23 @@ content:
 
 # examples
     - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+    - url: .
       start_path: examples/smoketests/src/main/adoc # core
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
+
 ui:
   bundle:
     url: ../isis-antora/build/ui-bundle.zip
diff --git a/antora/playbooks/site-extensions.yml b/antora/playbooks/site-extensions.yml
index 668a461..8a8037c 100644
--- a/antora/playbooks/site-extensions.yml
+++ b/antora/playbooks/site-extensions.yml
@@ -10,6 +10,14 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
 # extensions
     - url: .
@@ -40,6 +48,16 @@ content:
       start_path: extensions/vw/pdfjs/adoc # vw
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
 
 ui:
   bundle:
diff --git a/antora/playbooks/site-incubator.yml b/antora/playbooks/site-incubator.yml
index 0c7a11e..9a1c2b8 100644
--- a/antora/playbooks/site-incubator.yml
+++ b/antora/playbooks/site-incubator.yml
@@ -10,6 +10,14 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
 
 # incubator
@@ -23,6 +31,16 @@ content:
       start_path: incubator/mappings/microprofile/src/main/adoc # incubator
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
 
 ui:
   bundle:
diff --git a/antora/playbooks/site-legacy.yml b/antora/playbooks/site-legacy.yml
index dba5fa8..836d0d1 100644
--- a/antora/playbooks/site-legacy.yml
+++ b/antora/playbooks/site-legacy.yml
@@ -10,7 +10,14 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
 
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
 # legacy
     - url: .
@@ -32,6 +39,17 @@ content:
       start_path: legacy/subdomains/servletapi/adoc # legacy
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
+
 
 
 ui:
diff --git a/antora/playbooks/site-mappings.yml b/antora/playbooks/site-mappings.yml
index ce22816..f4108e0 100644
--- a/antora/playbooks/site-mappings.yml
+++ b/antora/playbooks/site-mappings.yml
@@ -10,6 +10,14 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
 
 # mappings
@@ -29,6 +37,16 @@ content:
       start_path: mappings/slack/adoc # mappings
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
 
 ui:
   bundle:
diff --git a/antora/playbooks/site-persistence.yml b/antora/playbooks/site-persistence.yml
index 5d20040..c6f2b99 100644
--- a/antora/playbooks/site-persistence.yml
+++ b/antora/playbooks/site-persistence.yml
@@ -10,12 +10,29 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
 
 # persistence
     - url: .
       start_path: persistence/jdo/adoc # pjdo
       branches: HEAD
 
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 ui:
   bundle:
diff --git a/antora/playbooks/site-refguide.yml b/antora/playbooks/site-refguide.yml
index 3b3aa13..e2ec26e 100644
--- a/antora/playbooks/site-refguide.yml
+++ b/antora/playbooks/site-refguide.yml
@@ -10,7 +10,9 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
-
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
 
 # api
     - url: .
@@ -28,6 +30,22 @@ content:
       start_path: core/config/src/main/adoc # refguide
       branches: HEAD
 
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
+
 
 
 ui:
diff --git a/antora/playbooks/site-relnotes.yml b/antora/playbooks/site-relnotes.yml
index 78cd581..fd56739 100644
--- a/antora/playbooks/site-relnotes.yml
+++ b/antora/playbooks/site-relnotes.yml
@@ -13,6 +13,24 @@ content:
     - url: .
       start_path: antora/components/relnotes # relnotes
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 
 
diff --git a/antora/playbooks/site-security.yml b/antora/playbooks/site-security.yml
index 85053fb..1a0d0a6 100644
--- a/antora/playbooks/site-security.yml
+++ b/antora/playbooks/site-security.yml
@@ -10,6 +10,9 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
 
 
 # core
@@ -17,6 +20,12 @@ content:
       start_path: core/security/src/main/adoc # security
       branches: HEAD
 
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+
 # extensions
     - url: .
       start_path: extensions/security/secman/adoc # security
@@ -25,6 +34,11 @@ content:
       start_path: extensions/security/shiro-realm-ldap/adoc # security
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
 # security
     - url: .
       start_path: security/adoc # security
@@ -40,6 +54,12 @@ content:
       branches: HEAD
 
 
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
+
 
 ui:
   bundle:
diff --git a/antora/playbooks/site-setupguide.yml b/antora/playbooks/site-setupguide.yml
index e623f1d..eb46d38 100644
--- a/antora/playbooks/site-setupguide.yml
+++ b/antora/playbooks/site-setupguide.yml
@@ -13,6 +13,24 @@ content:
     - url: .
       start_path: antora/components/setupguide # setupguide
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 
 ui:
diff --git a/antora/playbooks/site-subdomains.yml b/antora/playbooks/site-subdomains.yml
index 531c83d..6782cdc 100644
--- a/antora/playbooks/site-subdomains.yml
+++ b/antora/playbooks/site-subdomains.yml
@@ -10,7 +10,24 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 # subdomains
     - url: .
diff --git a/antora/playbooks/site-testing.yml b/antora/playbooks/site-testing.yml
index f68a1dd..d75027a 100644
--- a/antora/playbooks/site-testing.yml
+++ b/antora/playbooks/site-testing.yml
@@ -10,7 +10,24 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 # testing
     - url: .
diff --git a/antora/playbooks/site-userguide.yml b/antora/playbooks/site-userguide.yml
index 6fce910..f146d25 100644
--- a/antora/playbooks/site-userguide.yml
+++ b/antora/playbooks/site-userguide.yml
@@ -10,17 +10,36 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
 
 # api
     - url: .
       start_path: api/adoc/userguide # userguide
       branches: HEAD
 
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
+
 # extensions
     - url: .
       start_path: extensions/core/flyway/adoc # userguide
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
+
 
 ui:
   bundle:
diff --git a/antora/playbooks/site-valuetypes.yml b/antora/playbooks/site-valuetypes.yml
index e157bdd..3f2ec03 100644
--- a/antora/playbooks/site-valuetypes.yml
+++ b/antora/playbooks/site-valuetypes.yml
@@ -10,7 +10,24 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
 
 # valuetypes
     - url: .
diff --git a/antora/playbooks/site-vro.yml b/antora/playbooks/site-vro.yml
index d7c6323..14039df 100644
--- a/antora/playbooks/site-vro.yml
+++ b/antora/playbooks/site-vro.yml
@@ -10,12 +10,30 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
 # extensions
     - url: .
       start_path: extensions/vro/cors/adoc # vro
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
 # viewers
     - url: .
       start_path: viewers/restfulobjects/src/main/adoc # vro
diff --git a/antora/playbooks/site-vw.yml b/antora/playbooks/site-vw.yml
index b96b442..e685c4d 100644
--- a/antora/playbooks/site-vw.yml
+++ b/antora/playbooks/site-vw.yml
@@ -10,6 +10,14 @@ content:
     - url: .
       start_path: antora/components/docs # docs
       branches: HEAD
+    - url: .
+      start_path: antora/redirects/guides # docs
+      branches: HEAD
+
+# examples
+    - url: .
+      start_path: examples/demo/src/main/adoc # docs
+      branches: HEAD
 
 # extensions
     - url: .
@@ -22,6 +30,16 @@ content:
       start_path: extensions/vw/pdfjs/adoc # vw
       branches: HEAD
 
+# mavendeps
+    - url: .
+      start_path: mavendeps/adoc # docs
+      branches: HEAD
+
+# starters
+    - url: .
+      start_path: starters/adoc # docs
+      branches: HEAD
+
 # viewers
     - url: .
       start_path: viewers/wicket/src/main/adoc # vw
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/Title.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/Title.adoc
index 3db789f..1346bca 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/Title.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/Title.adoc
@@ -34,7 +34,7 @@ This convention can be overridden using `@Property(where=Where.NOWHERE)`.
 
 == Lombok support
 
-If xref:setupguide:ROOT:hints-and-tips.adoc#project-lombok[Project Lombok] is being used, then `@Title` can be specified on the backing field.
+If xref:setupguide:hints-and-tips:about.adoc#project-lombok.adoc[Project Lombok] is being used, then `@Title` can be specified on the backing field.
 
 For example:
 
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc
index 3fbe56e..d900f6a 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc
@@ -68,7 +68,7 @@ These "Q..." classes mirror the structure of domain entity, but expose propertie
 [NOTE]
 ====
 The IntelliJ IDE automatically enables annotation processing by default, as does Maven.
-Using Eclipse IDE you may need to configure annotation processing manually; see the  xref:setupguide:ROOT:eclipse.adoc#enable-annotation-processing[Setup Guide].
+Using Eclipse IDE you may need to configure annotation processing manually; see the  xref:setupguide:eclipse:about.adoc#enable-annotation-processing[Setup Guide].
 The DataNucleus' link:http://www.datanucleus.org/products/accessplatform_4_0/jdo/jdoql_typesafe.html[documentation] offers some guidance on confirming that APT is enabled.
 ====
 
diff --git a/persistence/jdo/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
index 3a70882..58ab7b0 100644
--- a/persistence/jdo/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
+++ b/persistence/jdo/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
@@ -27,7 +27,7 @@ Normally all one needs to do is to change the `persistence-unit` name.
 [TIP]
 ====
 If you use Eclipse IDE on Windows then
-xref:setupguide:ROOT:eclipse.adoc#workaround-for-path-limits-the-dn-plugin-to-use-the-persistence-xml[note the importance] of the `persistence.xml` file to make DataNucleus enhancer work correctly.
+xref:setupguide:eclipse:about.adoc#workaround-for-path-limits-the-dn-plugin-to-use-the-persistence-xml[note the importance] of the `persistence.xml` file to make DataNucleus enhancer work correctly.
 ====
 
 
diff --git a/starters/adoc/modules/starters/pages/helloworld.adoc b/starters/adoc/modules/starters/pages/helloworld.adoc
index ed828c8..8fb6565 100644
--- a/starters/adoc/modules/starters/pages/helloworld.adoc
+++ b/starters/adoc/modules/starters/pages/helloworld.adoc
@@ -22,7 +22,7 @@ Apache Isis is a Java based framework, so in terms of prerequisites, you'll need
 * Java 8 JDK
 * link:http://maven.apache.org[Apache Maven] 3.5+
 
-You'll probably also want to use an IDE; the Apache Isis committers use either IntelliJ or Eclipse; in the xref:setupguide:ROOT:ide.adoc[Setup Guide] we have detailed setup instructions for using these two IDEs.
+You'll probably also want to use an IDE; the Apache Isis committers use either IntelliJ or Eclipse; in the xref:setupguide:ROOT:about.adoc[Setup Guide] we have detailed setup instructions for using these two IDEs.
 If you're a NetBeans user you should have no problems as it too has strong support for Maven.
 
 When building and running within an IDE, you'll also need to configure the Datanucleus enhancer.
@@ -459,8 +459,8 @@ This means:
 == Running from within the IDE
 
 Most of the time you'll probably want to run the app from within your IDE.
-The mechanics of doing this will vary by IDE; see the xref:setupguide:ROOT:ide.adoc[Setup Guide] for details of setting up Eclipse or IntelliJ IDEA.
-Basically, though, it amounts to running the `main()` method in the `HelloWorldApp`, but also (and this bit is important) ensuring that the xref:setupguide:ROOT:hints-and-tips.adoc#datanucleus-enhancer[DataNucleus enhancer] has properly processed all domain entities.
+The mechanics of doing this will vary by IDE; see the xref:setupguide:ROOT:about.adoc[Setup Guide] for details of setting up Eclipse or IntelliJ IDEA.
+Basically, though, it amounts to running the `main()` method in the `HelloWorldApp`, but also (and this bit is important) ensuring that the xref:setupguide:hints-and-tips:about.adoc#datanucleus-enhancer[DataNucleus enhancer] has properly processed all domain entities.
 
 Here's what the setup looks like in IntelliJ IDEA:
 
@@ -477,8 +477,7 @@ image::helloworld/helloworld-before-launch.png[width="600px",link="{imagesdir}/h
 Once you are familiar with the app, try modifying it.
 There is plenty more guidance on this site; start with the xref:userguide:fun:about.adoc[User Guide Fundamentals] and then look at the other guides linked to from the top-level menu or from the main xref:docs:ROOT:about.adoc[table of contents].
 
-If you use IntelliJ IDEA or Eclipse, do also install the
-xref:setupguide:ROOT:intellij.adoc#live-templates[live templates (for IntelliJ)] / xref:setupguide:ROOT:eclipse.adoc#editor-templates[editor templates (for Eclipse)]; these will help you follow the Apache Isis naming conventions.
+// If you use IntelliJ IDEA or Eclipse, do also install thexref:setupguide:intellij:about.adoc#live-templates[live templates (for IntelliJ)] / xref:setupguide:eclipse:about.adoc#editor-templates[editor templates (for Eclipse)]; these will help you follow the Apache Isis naming conventions.
 
 If you run into issues, please don't hesitate to ask for help on the users mailing list or the Slack channel, as per the xref:docs:support:about.adoc[support page].
 
diff --git a/starters/adoc/modules/starters/pages/simpleapp.adoc b/starters/adoc/modules/starters/pages/simpleapp.adoc
index dd38c1e..0bcf9d4 100644
--- a/starters/adoc/modules/starters/pages/simpleapp.adoc
+++ b/starters/adoc/modules/starters/pages/simpleapp.adoc
@@ -16,7 +16,7 @@ Apache Isis is a Java based framework, so in terms of prerequisites, you'll need
 * Java 8 JDK
 * link:http://maven.apache.org[Apache Maven] 3.5+
 
-You'll probably also want to use an IDE; the Apache Isis committers use either IntelliJ or Eclipse; in the xref:setupguide:ROOT:ide.adoc[Setup Guide] we have detailed setup instructions for using these two IDEs.
+You'll probably also want to use an IDE; the Apache Isis committers use either IntelliJ or Eclipse; in the xref:setupguide:ROOT:about.adoc[Setup Guide] we have detailed setup instructions for using these two IDEs.
 If you're a NetBeans user you should have no problems as it too has strong support for Maven.
 
 When building and running within an IDE, you'll also need to configure the Datanucleus enhancer.
@@ -874,8 +874,8 @@ This means:
 == Running from within the IDE
 
 Most of the time you'll probably want to run the app from within your IDE.
-The mechanics of doing this will vary by IDE; see the xref:setupguide:ROOT:ide.adoc[Setup Guide] for details of setting up Eclipse or IntelliJ IDEA.
-Basically, though, it amounts to running the `main()` method in the `SimpleApp`, but also (and this bit is important) ensuring that the xref:setupguide:ROOT:hints-and-tips.adoc#datanucleus-enhancer[DataNucleus enhancer] has properly processed all domain entities.
+The mechanics of doing this will vary by IDE; see the xref:setupguide:ROOT:about.adoc[Setup Guide] for details.
+Basically, though, it amounts to running the `main()` method in the `SimpleApp`, but also (and this bit is important) ensuring that the xref:setupguide:hints-and-tips:about.adoc#datanucleus-enhancer[DataNucleus enhancer] has properly processed all domain entities.
 
 Here's what the setup looks like in IntelliJ IDEA:
 
@@ -892,7 +892,7 @@ image::simpleapp/simpleapp-webapp-before-launch.png[width="600px",link="{imagesd
 Once you are familiar with the app, try modifying it.
 There is plenty more guidance on this site; start with the xref:userguide:fun:about.adoc[User Guide Fundamentals] and then look at the other guides linked to from the top-level menu or from the main xref:docs:ROOT:about.adoc[table of contents].
 
-If you use IntelliJ IDEA or Eclipse, do also install the xref:setupguide:ROOT:intellij.adoc#live-templates[live templates (for IntelliJ)] / xref:setupguide:ROOT:eclipse.adoc#editor-templates[editor templates (for Eclipse)]; these will help you follow the Apache Isis naming conventions.
+// If you use IntelliJ IDEA or Eclipse, do also install the xref:setupguide:intellij:about.adoc#live-templates[live templates (for IntelliJ)] / xref:setupguide:eclipse:about.adoc#editor-templates[editor templates (for Eclipse)]; these will help you follow the Apache Isis naming conventions.
 
 If you run into issues, please don't hesitate to ask for help on the users mailing list or the Slack channel, as per the xref:docs:support:about.adoc[support page].
 
diff --git a/testing/unittestsupport/adoc/modules/unittestsupport/pages/about.adoc b/testing/unittestsupport/adoc/modules/unittestsupport/pages/about.adoc
index 12484cd..7c46fa9 100644
--- a/testing/unittestsupport/adoc/modules/unittestsupport/pages/about.adoc
+++ b/testing/unittestsupport/adoc/modules/unittestsupport/pages/about.adoc
@@ -71,7 +71,7 @@ This contract test automatically checks that bidirectional 1:m or 1:1 associatio
 ====
 (If using JDO/DataNucleus, then) there is generally no need to programmatically maintain 1:m relationships (indeed it may introduce subtle errors).
 For more details, see xref:userguide:fun:how-tos/entity-relationships/managed-1-to-m-bidirectional-relationships.adoc[here].
-Also check out the templates in the setup guide (xref:setupguide:ROOT:intellij.adoc#live-templates[live templates (for IntelliJ)] / xref:setupguide:ROOT:eclipse.adoc#editor-templates[editor templates (for Eclipse)]) for further guidance.
+// Also check out the templates in the setup guide (xref:setupguide:intellij:about.adoc#live-templates[live templates (for IntelliJ)] / xref:setupguide:eclipse:about.adoc#editor-templates[editor templates (for Eclipse)]) for further guidance.
 ====
 
 For example, suppose that `ParentDomainObject` and `ChildDomainObject` have a 1:m relationship (`ParentDomainObject#children` / `ChildDomainObject#parent`), and also `PeerDomainObject` has a 1:1 relationship with itself (`PeerDomainObject#next` / `PeerDomainObject#previous`).
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/configuration-properties.adoc b/viewers/wicket/adoc/modules/ROOT/pages/configuration-properties.adoc
index db317b5..ea7bf64 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/configuration-properties.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/configuration-properties.adoc
@@ -813,9 +813,9 @@ This feature is primarily just to help track any memory leakage issues that migh
 |`isis.viewer.wicket.` +
 `liveReloadUrl`
 | URL
-|Specifies the URL if xref:setupguide:ROOT:intellij.adoc#using-gradle-for-livereload[live reload] is set up, eg: +
-
+|Specifies the URL if live reload is set up, eg: +
 `http://localhost:35729/livereload.js?snipver=1`
+// xref:setupguide:intellij:hints-and-tips.adoc#using-gradle-for-livereload[live reload] is set up, eg: +
 
 |`isis.viewer.wicket.` +
 `stripWicketTags`