Available templates¶
qube currently has the following templates available:
In the following every template is devoted its own section, which explains its purpose, design, included frameworks/libraries, usage and frequently asked questions. A set of frequently questions, which all templates share see here: Shared FAQ FAQ. It is recommended to use the sidebar to navigate this documentation, since it is very long and cumbersome to scroll through.
cli-java¶
Purpose¶
Design¶
This template follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── java_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── life
│ │ │ └── qbic
│ │ │ └── cli
│ │ │ ├── SampleCommand.java
│ │ │ ├── SampleEntryPoint.java
│ │ │ └── SampleTool.java
│ │ └── resources
│ │ ├── log4j2.xml
│ │ └── tool.properties
│ └── test
│ ├── java
│ │ └── life
│ │ └── qbic
│ │ └── cli
│ │ ├── SampleIntegrationTest.java
│ │ └── SampleTest.java
│ └── resources
│ ├── log4j2.xml
│ └── tool.properties
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
Like all of QBiC’s JVM based projects, cli-java uses QBiC’s parent-pom.
cli-java uses picocli to expose the commandline parameters to the user.
junit4 is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Four Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.build_package.yml
, which builds the Maven based project.java_checkstyle.yml
, which runs Checkstyle using Google’s Styleguides.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails if the PR does not come from a release or hotfix branch
gui-java¶
Purpose¶
Design¶
gui-java follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── java_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── life
│ │ │ └── qbic
│ │ │ └── gui
│ │ │ ├── SampleApplication.java
│ │ │ ├── SampleCommand.java
│ │ │ └── SampleEntryPoint.java
│ │ └── resources
│ │ ├── log4j2.xml
│ │ └── tool.properties
│ └── test
│ ├── java
│ │ └── life
│ │ └── qbic
│ │ └── gui
│ │ ├── SampleIntegrationTest.java
│ │ └── SampleTest.java
│ └── resources
│ ├── log4j2.xml
│ └── tool.properties
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
Like all of QBiC’s JVM based projects, lib-java uses QBiC’s parent-pom.
gui-java uses JavaFX 8 to build the graphical user interface.
junit4 is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Four Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.build_package.yml
, which builds the Maven based project.java_checkstyle.yml
, which runs Checkstyle using Google’s Styleguides.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails if the PR does not come from a release or hotfix branch
lib-java¶
Purpose¶
Design¶
lib-java follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── java_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── life
│ │ │ └── qbic
│ │ │ └── package-info.java
│ │ └── resources
│ │ └── .gitignore
│ └── test
│ ├── java
│ │ └── life
│ │ └── qbic
│ │ └── package-info.java
│ └── resources
│ └── log4j2.xml
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
Like all of QBiC’s JVM based projects, lib-java uses QBiC’s parent-pom.
junit4 is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Four Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.build_package.yml
, which builds the Maven based project.java_checkstyle.yml
, which runs Checkstyle using Google’s Styleguides.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails if the PR does not come from a release or hotfix branch
lib-groovy¶
Purpose¶
Design¶
lib-groovy follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── java_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── groovy
│ │ │ └── life
│ │ │ └── qbic
│ │ │ └── package-info.java
│ │ └── resources
│ │ └── .gitignore
│ └── test
│ ├── groovy
│ │ └── life
│ │ └── qbic
│ │ └── package-info.java
│ └── resources
│ └── log4j2.xml
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
Unlike all of QBiC’s JVM based projects, lib-groovy does not use QBiC’s parent-pom for now.
spock is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Four Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.build_package.yml
, which builds the Maven based project.java_checkstyle.yml
, which runs Checkstyle using Google’s Styleguides.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails if the PR does not come from a release or hotfix branch
service-java¶
Purpose¶
service-java is a base template for services, which are similar to commandline tools, but stay active until shutdown.
Design¶
service-java follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── java_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── life
│ │ │ └── qbic
│ │ │ └── gui
│ │ │ ├── SampleApplication.java
│ │ │ ├── SampleCommand.java
│ │ │ └── SampleEntryPoint.java
│ │ └── resources
│ │ ├── log4j2.xml
│ │ └── tool.properties
│ └── test
│ ├── java
│ │ └── life
│ │ └── qbic
│ │ └── gui
│ │ ├── SampleIntegrationTest.java
│ │ └── SampleTest.java
│ └── resources
│ ├── log4j2.xml
│ └── tool.properties
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
Like all of QBiC’s JVM based projects, lib-java uses QBiC’s parent-pom.
junit4 is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Four Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.build_package.yml
, which builds the Maven based project.java_checkstyle.yml
, which runs Checkstyle using Google’s Styleguides.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails if the PR does not come from a release or hotfix branch
portlet-groovy¶
Purpose¶
Design¶
portlet-groovy follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── groovy_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── groovy
│ │ │ └── life.qbic.portal.portlet
│ │ │ └── SamplePortlet.groovy
│ │ ├── resources
│ │ │ ├── developer.properties.example
│ │ │ ├── .gitignore
│ │ │ ├── life
│ │ │ │ └── qbic
│ │ │ │ └── portal
│ │ │ │ └── portlet
│ │ │ │ └── AppWidgetSet.gwt.xml
│ │ │ ├── log4j2.xml
│ │ │ └── portlet.properties
│ │ └── webapp
│ │ ├── VAADIN
│ │ │ └── themes
│ │ │ └── mytheme
│ │ │ ├── addons.scss
│ │ │ ├── mytheme.scss
│ │ │ ├── styles.css
│ │ │ └── styles.scss
│ │ └── WEB-INF
│ │ ├── liferay-display.xml
│ │ ├── liferay-plugin-package.properties
│ │ ├── liferay-portlet.xml
│ │ ├── portlet.xml
│ │ └── web.xml
│ └── test
│ ├── java
│ │ └── life
│ │ └── qbic
│ │ └── portal
│ │ └── portlet
│ │ ├── SamplePortletIntegrationTest.java
│ │ └── SamplePortletTest.java
│ └── resources
│ ├── log4j2.xml
│ └── portlet.properties
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
During the creation you will be asked whether or not you want to use the
openbis client. This will include the openbis-client-lib in your project.
openbis raw api. This will include the openbis-api in your project.
qbic databases. This will include the mariadb-java-client in your project.
vaadin charts. This will include the vaadin-charts in your project.
Like all of QBiC’s JVM based projects, lib-java uses QBiC’s parent-pom.
junit4 is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Three Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.groovy_checkstyle.yml
, which runs npm-groovy-lint, which can be seen as a wrapper around CodeNarc.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails iif the PR does not come from a release or hotfix branch
portlet-groovy-osgi¶
Purpose¶
Design¶
portlet-groovy-osgi follows the standard Maven project layout.
├── AUTHORS.rst
├── CHANGELOG.rst
├── CODEOFCONDUCT.rst
├── .dependabot
│ └── config.yml
├── docs
│ ├── authors.rst
│ ├── changelog.rst
│ ├── codeofconduct.rst
│ ├── conf.py
│ ├── index.rst
│ ├── installation.rst
│ ├── make.bat
│ ├── Makefile
│ ├── readme.rst
│ ├── requirements.txt
│ └── usage.rst
├── .github
│ ├── ISSUE_TEMPLATE
│ │ ├── bug_report.md
│ │ ├── feature_request.md
│ │ └── general_question.md
│ ├── pull_request_template.md
│ └── workflows
│ ├── build_docs.yml
│ ├── build_package.yml
│ ├── groovy_checkstyle.yml
│ └── run_tests.yml
├── .gitignore
├── LICENSE
├── pom.xml
├── qube.cfg
├── .qube.yml
├── README.rst
├── .readthedocs.yml
├── src
│ ├── main
│ │ ├── groovy
│ │ │ └── life.qbic.portal.portlet
│ │ │ └── AppTheme.groovy
│ │ │ └── SamplePortletUI.groovy
│ │ ├── resources
│ │ │ ├── developer.properties.example
│ │ │ ├── .gitignore
│ │ │ ├── life
│ │ │ │ └── qbic
│ │ │ │ └── portal
│ │ │ │ └── portlet
│ │ │ │ └── AppWidgetSet.gwt.xml
│ │ │ ├── log4j2.xml
│ │ │ └── portlet.properties
│ │ └── webapp
│ │ ├── VAADIN
│ │ │ └── themes
│ │ │ └── mytheme
│ │ │ ├── addons.scss
│ │ │ ├── mytheme.scss
│ │ │ ├── styles.css
│ │ │ └── styles.scss
│ │ └── WEB-INF
│ │ ├── liferay-display.xml
│ │ ├── liferay-plugin-package.properties
│ │ ├── liferay-portlet.xml
│ │ ├── portlet.xml
│ │ └── web.xml
│ └── test
│ ├── java
│ │ └── life
│ │ └── qbic
│ │ └── portal
│ │ └── portlet
│ │ ├── SamplePortletIntegrationTest.java
│ │ └── SamplePortletTest.java
│ └── resources
│ ├── log4j2.xml
│ └── portlet.properties
├── .travis.settings.xml
└── .travis.yml
If you are unfamiliar with specific files/file types, you may find them in our Newbie Guide to QBiC software.
Included frameworks/libraries¶
During the creation you will be asked whether or not you want to use the
openbis client. This will include the openbis-client-lib in your project.
openbis raw api. This will include the openbis-api in your project.
qbic databases. This will include the mariadb-java-client in your project.
vaadin charts. This will include the vaadin-charts in your project.
Like all of QBiC’s JVM based projects, lib-java uses QBiC’s parent-pom.
spock is currently QBiC’s testing framework of choice. If you require mocking for any integration tests or advanced command line tests, Mockito may be useful.
Preconfigured ReadTheDocs.
Three Github workflows are shipped with the template
build_docs.yml
, which builds the ReadTheDocs documentation.groovy_checkstyle.yml
, which runs npm-groovy-lint, which can be seen as a wrapper around CodeNarc.run_test.yml
, which runs all junit4 tests.qube_lint.yml
, which runs QUBE’s linting on the project.pr_to_master_from_development_only.yml
which fails if the PR does not come from a release or hotfix branch