Getting Started

You can either add the required dependencies to an existing project or use one of the Maven archetypes to get started.

Maven dependencies

To create a linkki project, you need one of the following dependencies depending on the feature set you need:

linkki-core
            <dependency>
                <groupId>org.linkki-framework</groupId>
                <artifactId>linkki-core-vaadin-flow</artifactId>
                <version>2.5.1</version>
            </dependency>
linkki-vaadin-flow-component
            <dependency>
                <groupId>org.linkki-framework</groupId>
                <artifactId>linkki-vaadin-flow-component</artifactId>
                <version>2.5.1</version>
            </dependency>

linkki-vaadin-flow-component contains the following additional features:

  • Sidebar layout

linkki-application-framework
            <dependency>
                <groupId>org.linkki-framework</groupId>
                <artifactId>linkki-application-framework-vaadin-flow</artifactId>
                <version>2.5.1</version>
            </dependency>

linkki-application-framework contains the following additional features:

  • Dialogs

  • LinkkiUi with ApplicationLayout and ApplicationConfig as well as an adjusted theme

  • UI Components to display validation messages

In addition to the linkki dependency, a linkki application with Vaadin may require a Vaadin Spring Boot starter.

Initial project structure

app structure
BusinessPartner

A spring specific class which allows our project to be run as a Java application. This class will not be found in the plain archetype.

BusinessPartnerInfo

Defines basic information about our linkki application.

BusinessPartnerConfig

Provides an instance of our BusinessPartnerInfo class and provides ApplicationMenuItemDefinition items to create an ApplicationMenu for the ApplicationHeader.

BusinessPartnerLayout

Uses the BusinessPartnerConfig class to provide information for our application.

HelloPmo

Defines a section on the webpage which is used in the UI of the application. You can apply annotations like @UITextfield to your methods to create specific UI elements. For more information about creating a UI see UI elements.

BusinessPartnerPage

Allows displaying and editing data in a certain layout and can consist of so called sections defined with multiple PMOs.

BusinessPartnerView

Defines the entrypoint of a our main page.

Index

  1. Example project
  2. Maven Archetypes
  3. Dependencies