> Markdown version of [Vaadin Libraries](https://vaadin.com/docs/v8/framework/getting-started/getting-started-libraries). Section index: [llms.txt](https://vaadin.com/docs/v8/framework/llms.txt)

# <a id="getting-started.libraries"></a>Vaadin Libraries

Vaadin Framework comes as a set of library JARs, of which some are optional or alternative ones, depending on whether you are developing server-side or client-side applications, whether you use add-on components, or use CSS or Sass themes.

- vaadin-server-8.x.x.jar

  The main library for developing server-side Vaadin applications, as described in ["Writing a Server-Side Web Application"](https://vaadin.com/docs/v8/framework/application/application-overview.md#application.overview). It requires the vaadin-shared and the vaadin-themes libraries. You can use the pre-built vaadin-client-compiled for server-side development, unless you need add-on components or custom widgets.

- vaadin-themes-8.x.x.jar

  Vaadin Framework built-in themes both as SCSS source files and precompiled CSS files. The library is required both for basic use with CSS themes and for compiling custom Sass themes.

- vaadin-push-8.x.x.jar

  The implementation of server push for Vaadin Framework. This is needed for web applications which use server push (e.g. using the @Push annotation in a Servlet class).

- vaadin-shared-8.x.x.jar

  A shared library for server-side and client-side development. It is always needed.

- vaadin-client-compiled-8.x.x.jar

  A pre-compiled Vaadin Client-Side Engine (widget set) that includes all the basic built-in widgets in Vaadin. This library is not needed if you compile the application widget set with the Vaadin Client Compiler.

- vaadin-client-8.x.x.jar

  The client-side Vaadin Framework, including the basic GWT API and Vaadin-specific widgets and other additions. It is required when using the vaadin-client-compiler to compile client-side modules. It is not needed if you just use the server-side framework with the pre-compiled Client-Side Engine. You should not deploy it with a web application.

- vaadin-client-compiler-8.x.x.jar

  The Vaadin Client Compiler is a Java-to-JavaScript compiler that allows building client-side modules, such as the Client-Side Engine (widget set) required for server-side applications. The compiler is needed, for example, for compiling add-on components to the application widget set, as described in ["Using Vaadin Add-ons"](https://vaadin.com/docs/v8/framework/addons/addons-overview.md#addons.overview).

  For detailed information regarding the compiler, see ["Compiling a Client-Side Module"](https://vaadin.com/docs/v8/framework/clientside/clientside-compiling.md#clientside.compiling). Note that you should not deploy this library with a web application.

- vaadin-compatibility-\*-8.x.x.jar

  The Vaadin Framework 7 compatibility packages contain the components and themes that are present in framework version 7, but not in version 8. These packages exist for making it easier to migrate from version 7 to 8. There is a compatibility package for everything except vaadin-client-compiler.

Some of the libraries depend on each other, for instance vaadin-shared is included as a dependency of vaadin-server.

The different ways to install the libraries are described in the subsequent sections.

Note that the vaadin-client-compiler and vaadin-client JARs should not be deployed with the web application. The Maven scope provided can be used. Some other libraries, such as vaadin-sass-compiler, are not needed in production deployment.
