/skeleton-starter-flow

Default project template for Vaadin

Primary LanguageJavaThe UnlicenseUnlicense

Skeleton Starter for Vaadin

This project can be used as a starting point to create your own Vaadin application. It has the necessary dependencies and files to help you get started.

The best way to use it is via vaadin.com/start - you can get only the necessary parts and choose the package naming you want to use. There is also a getting started tutorial based on this project.

To access it directly from github, clone the repository and import the project to the IDE of your choice as a Maven project. You need to have Java 8 or 11 installed.

Run using mvn jetty:run and open http://localhost:8080 in the browser.

If you want to run your app locally in the production mode, run mvn jetty:run -Pproduction.

Running Integration Tests

Integration tests are implemented using Vaadin TestBench. The tests take a few minutes to run and are therefore included in a separate Maven profile. We recommend running tests with a production build to minimize the chance of development time toolchains affecting test stability. To run the tests using Google Chrome, execute

mvn verify -Pit,production

and make sure you have a valid TestBench license installed (you can obtain a trial license from the trial page).

Project structure

The project follow Maven's standard directory layout structure:

  • Under the srs/main/java are located Application sources
    • AppShell.java configures the @PWA annotation making the application installable
    • GreetService.java is a service class
    • MainView.java is an example Vaadin view
  • Under the srs/test are located the TestBench test files
  • src/main/resources contains configuration files and static resources
  • The frontend directory in the root folder contains client-side dependencies and resource files. Example CSS styles used by the application are located under frontend/themes

Workspace.xml file

IntelliJ IDEA uses workspace.xml file to cache user-specific project configuration. Tracking of local changes to the workspace.xml file can be prevented with the git update-index --assume-unchanged .idea/workspace.xml command. And to revert the setting: git update-index --no-assume-unchanged .idea/workspace.xml.

Useful links

For a full Vaadin application example, there are more choices available also from vaadin.com/start page.