summaryrefslogtreecommitdiffstats
path: root/documentation/clientside/clientside-overview.asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/clientside/clientside-overview.asciidoc')
-rw-r--r--documentation/clientside/clientside-overview.asciidoc49
1 files changed, 49 insertions, 0 deletions
diff --git a/documentation/clientside/clientside-overview.asciidoc b/documentation/clientside/clientside-overview.asciidoc
new file mode 100644
index 0000000000..8b475d812e
--- /dev/null
+++ b/documentation/clientside/clientside-overview.asciidoc
@@ -0,0 +1,49 @@
+---
+title: Overview
+order: 1
+layout: page
+---
+
+[[clientside.overview]]
+= Overview
+
+As noted in the introduction, Vaadin supports two development models:
+server-side and client-side. Client-side Vaadin code is executed in the web
+browser as JavaScript code. The code is written in Java, like all Vaadin code,
+and then compiled to JavaScript with the __Vaadin Client Compiler__. You can
+develop client-side widgets and integrate them with server-side counterpart
+components to allow using them in server-side Vaadin applications. That is how
+the components in the server-side framework and in most add-ons are done.
+Alternatively, you can create pure client-side GWT applications, which you can
+simply load in the browser from an HTML page and use even without server-side
+connectivity.
+
+The client-side framework is based on the Google Web Toolkit (GWT), with added
+features and bug fixes. Vaadin is compatible with GWT to the extent of the basic
+GWT feature set. Vaadin Ltd is a member of the GWT Steering Committee, working
+on the future direction of GWT together with Google and other supporters of GWT.
+
+
+[NOTE]
+.Widgets and Components
+====
+((("widget,
+definition")))
+Google Web Toolkit uses the term __widget__ for user interface components. In
+this book, we use the term widget to refer to client-side components, while
+using the term __component__ in a general sense and also in the special sense
+for server-side components.
+
+====
+
+
+
+The main idea in server-side Vaadin development is to render the server-side
+components in the browser with the Client-Side Engine. The engine is essentially
+a set of widgets paired with __connectors__ that serialize their state and
+events with the server-side counterpart components. The client-side engine is
+technically called a __widget set__, to describe the fact that it mostly
+consists of widgets and that widget sets can be combined, as described later.
+
+
+