Vaadin is a Java framework for building modern web applications that look great, perform well and make you and your users happy.
Java CSS JavaScript HTML Python Shell
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github Fix stalebot flagging enhancements as stale (#10871) May 3, 2018
.settings Update Eclipse project to Java 8 Aug 24, 2016
all Add mention of ContextMenu changes to Release Notes (#11085) Jul 30, 2018
bom Advance spring addon version (#11063) Jul 18, 2018
checkstyle Update copyright year (#10761) Mar 27, 2018
client-compiled Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
client-compiler Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
client Set correct GWT .dtd definition (#11110) Aug 13, 2018
compatibility-client-compiled Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
compatibility-client Set correct GWT .dtd definition (#11110) Aug 13, 2018
compatibility-server-gae Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
compatibility-server Fixed typo (#11072) Jul 19, 2018
compatibility-shared Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
compatibility-themes Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
documentation Set correct GWT .dtd definition (#11110) Aug 13, 2018
eclipse Configure Eclipse to insert new line at the end of files (#10080) Sep 25, 2017
liferay-integration Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
liferay Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
osgi-integration Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
push Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
scripts Improve version number test for publish report script (#11007) Jun 28, 2018
server Set correct GWT .dtd definition (#11110) Aug 13, 2018
shared Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
test Set correct GWT .dtd definition (#11110) Aug 13, 2018
testbench-api Update project version to 8.6-SNAPSHOT (#11011) Jun 29, 2018
themes Lift frozen columns up to allow some z-index changes beneath them. (#… Aug 21, 2018
uitest Lift frozen columns up to allow some z-index changes beneath them. (#… Aug 21, 2018
.classpath Update Eclipse project to Java 8 Aug 24, 2016
.gitattributes Add *.properties to .gitattributes (#10180) Oct 16, 2017
.gitignore Automatic test for OSGi/karaf Jul 31, 2017
.gitmodules Remove vaadin-screenshots submodule (#10956) Jun 4, 2018
.project Convert Eclipse project to Maven based Apr 4, 2016
CONTRIBUTING.md Fix formatting, improve documentation on autoformat (#11033) Jul 10, 2018
LICENSE Fix typo in license (#9060) Apr 11, 2017
README-TESTS.md Replace CRLF with LF (#10062) Sep 22, 2017
README.md Add gitter button to readme (#10717) Mar 15, 2018
pom.xml Update TestBench version to 5.2.0 (#11058) Jul 17, 2018

README.md

Gitter

Vaadin Framework

Vaadin Framework allows you to build modern web apps efficiently in plain Java, without touching low level web technologies.

For instructions about using Vaadin to develop applications, please refer to Vaadin tutorial and other documentation.

To contribute, first refer to Contributing Code for general instructions and requirements for contributing code to the Vaadin framework.

Instructions on how to set up a working environment for developing the Vaadin Framework follow below.

Building a package

The distribution files can be built by running the standard Maven goal mvn install in the project root.

Eclipse Quick Setup

  1. Run git clone https://github.com/vaadin/framework.git command or clone the repository your favorite Git tool. If using Windows, you might want to add these Git settings: core.autocrlf=false and core.fileMode=false.
  2. Run mvn install in the project root. Note that the first compilation takes a while to finish as maven downloads dependencies used in the projects.
  3. Start Eclipse with the workspace you would like to use. It is usually a good idea to use the parent folder of the Git repository as the workspace folder.
  4. Import the project into Eclipse as a maven project. Use File -> Import -> Maven -> Existing Maven Projects.
  5. Select the framework folder (where you cloned the project)
  6. Click “Finish” to complete the import of Vaadin Framework

Now the project should compile without further configuration.

Compiling the Default Widget Set and Themes

  • Compile the default widgetset by running install maven goal in vaadin-client-compiled module root. In Eclipse this is done by right clicking on vaadin-client-compiled project it and choosing Run As -> Maven Build....
  • Compile the default themes by running install maven goal in vaadin-themes module root. In Eclipse this is done by right clicking on vaadin-themes project it and choosing Run As -> Maven Build....

Set up extra workspace preferences

The following preferences need to be set to keep the project consistent. You need to do this especially to be able to contribute changes to the project.

  1. Open Window -> Preferences (Windows) or Eclipse -> Preferences (Mac)
  2. Go to General -> Workspace
  3. Set Text file encoding to UTF-8
  4. Set New text file line delimiter to Unix
  5. Go to XML -> XML Files -> Editor
  6. Ensure the settings are follows:
  • Line width: 72
  • Format comments: true
  • Join lines: true
  • Insert whitespace before closing empty end-tags: true
  • Indent-using spaces: true
  • Indentation size: 4

Running a UI test

  1. In a Project Explorer right-click vaadin-uitest
  2. Open Run As -> Maven build...
  3. Type in jetty:run-exploded into Goals and click Run
  4. Open URL http://localhost:8888/run/<testUI>

Setting up IntelliJ IDEA to Develop Vaadin Framework 8

  1. Intall and run IDEA. Ultimate Edition is better but Community Edition should also work.
  2. Ensure if Git and Maven plugins are installed, properly configured and enabled.
  3. Clone the repository, using menu VCS -> Checkout from Version Control -> Git -> Git Repository URL -> https://github.com/vaadin/framework.git. When the repository is cloned, do NOT open it as a project.
  4. Open cloned repository as a maven object. Use File -> Open and choose root pom.xml file
  5. Have a coffee break while IDEA is loading dependencies and indexing the project
  6. Run Maven targets clean and install using Maven Projects tool window to compile the whole project

Running a specific UI test

  1. Open Maven Projects
  2. Open vaadin-uitest -> Plugins -> jetty -> jetty:run-exploded
  3. Open URL http://localhost:8888/run/<testUI>

Running a Development Server

  1. Open Run menu and click Edit Configurations
  2. Click green + sign at top left corner, select Maven from popup
  3. In the run configuration page, set any name for the configuration, select vaadin-uitest project folder as Working directory
  4. Type exec:exec@run-development-server into Command line and save the configuration
  5. Run the configuration and open URL http://localhost:8888/run/<testUI>

Running a Development Server in a debug mode

  1. Type exec:exec@debug-development-server into Command line and save the configuration
  2. In the same dialog, create new "Remote" debug configuration, using localhost and Port 5005
  3. Start both configurations and open URL http://localhost:8888/run/<testUI>