From ab972d42e1ec82ea1d64e5e8a71cf50e1f699b44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petter=20Holmstr=C3=B6m?= Date: Fri, 23 Oct 2026 15:59:15 +0300 Subject: [PATCH] docs: give the Getting Started front page Learn and Evaluate paths (#6482) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What Restructures the Getting Started front page (`articles/getting-started/index.adoc`) so that it serves two readers: someone learning Vaadin, and someone evaluating it for a project. Before, the page sent everyone to a single Quick Start button and put the evaluation reading list in one long paragraph. It had no entry for existing applications, migration, or working with a REST API. This builds on #6475 (Java framing) and #6477 (the Existing Applications page). The opening paragraphs from #6475 are unchanged. ## The page now - **Title:** "Getting Started with Vaadin" instead of "Welcome to the Getting Started Guide!". `page-title`, `meta-description`, and `description` are unchanged. - **Learn Vaadin:** an ordered path. Quick Start, then the Tutorial (a Spring Boot application with a Vaadin UI), then Next Steps. The pointers to Development Environment and Starters stay here. - **Evaluate Vaadin:** an ordered reading list with a time estimate of about half an hour. When to Use Vaadin, How Vaadin Works at Runtime, Licensing, Support & Maintenance, and Supported Technologies. It ends with a pointer to the Architecture deep dives. - **Start from Existing Code:** a short description list for readers who already have code: - **A Java application:** Add a Vaadin UI to an Existing Application (#6477) - **A REST API or a separate backend:** REST API Alongside Vaadin, and Call a Remote Service - **A Swing application:** SwingBridge, Swing Kit, and the Modernization Toolkit - **An older Vaadin version:** the Upgrading Guide, Version Comparison, Multiplatform Runtime (Vaadin 7 and 8), and the Modernization Toolkit ## New links The page didn't link to these before: - `articles/getting-started/next-steps.adoc` - `articles/building-apps/architecture/index.adoc` - `articles/building-apps/integration/rest-api.adoc` - `articles/building-apps/integration/call-remote-services.adoc` - `articles/tools/modernization-toolkit/swing-bridge/index.adoc` - `articles/tools/swing/index.adoc` - `articles/tools/modernization-toolkit/index.adoc` - `articles/upgrading/index.adoc` - `articles/upgrading/version-comparison.adoc` - `articles/tools/mpr/index.adoc` All the other links were already there. No pages move, so no redirects are needed. ## Notes for reviewers - **Quick Start:** on /docs/latest, the Quick Start currently redirects to vaadin.com/quickstart, which is part of a marketing experiment. I checked again today, and the redirect is still there. The Quick Start item promises only "a running application that you've changed yourself, in minutes", which is true for both versions. It doesn't name a duration, a view, or a production build. - **No buttons or cards:** a docs card makes its whole area one link, so a path with several steps can't be a card. The paths are plain ordered lists, which keeps the page short. The Quick Start button is gone, so that neither path stands out more than the other. The docs front page still links straight to the Quick Start. - **Licensing:** the migration tools aren't labeled as commercial, following the practice of leaving product-to-tier mapping to vaadin.com/pricing. Their own pages carry the commercial banner. - **JSF:** no page covers migration from JSF, so the page doesn't mention it. - **Vale:** no alerts. On main, the page has one warning (the exclamation point in the title) and one suggestion. `Vaadin.Versions` is turned off around the existing-code list, because Multiplatform Runtime applies only to Vaadin 7 and 8. The Feature Pack and Upgrading pages use the same pattern. - I rendered the page body with Asciidoctor to check the lists. I didn't run the full DS Publisher build. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5.5 --- articles/getting-started/index.adoc | 46 +++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/articles/getting-started/index.adoc b/articles/getting-started/index.adoc index d9b9e934c9..4f2b8d44c9 100644 --- a/articles/getting-started/index.adoc +++ b/articles/getting-started/index.adoc @@ -7,23 +7,59 @@ order: 5 section-nav: flat --- -= Welcome to the Getting Started Guide! += Getting Started with Vaadin Vaadin lets you build the web user interface of a Java application in Java. An application with a Vaadin UI is a regular Java application: you write the UI with the same language, tools, and libraries as the rest of the application. Java skills are all you need to be productive. Knowing CSS, JavaScript, or TypeScript helps, for example when you fine-tune the look of your application, but it isn't a requirement. Vaadin works with Spring Boot, Quarkus, Jakarta EE servers, and plain servlet containers. The Quick Start and the Tutorial use Spring Boot, because it's the easiest platform to start with. -New to Vaadin? Start with the Quick Start. In minutes, it gets you from nothing to a running application that you've changed yourself. +Where you start depends on whether you want to learn Vaadin or evaluate it for a project. -xref:quick-start#[Start the Quick Start, role="button primary water"] -When you have an application running, continue with the <>. It takes you step by step through building a complete Spring Boot application with a Vaadin UI, a database, forms, and navigation. +== Learn Vaadin -Evaluating Vaadin for a project? Start with <<{articles}/building-apps/architecture/when-to-use-vaadin#,When to Use Vaadin>> to learn which applications Vaadin fits, which it doesn't, and why. Then read <<{articles}/building-apps/architecture/runtime-model#,How Vaadin Works at Runtime>> to learn where the UI state lives, what each interaction costs, and what that means for deploying and scaling the application. If you already have an application, see <>. It shows how the UI fits in next to the application's REST API, security configuration, and JPA entities. Finally, see <<{articles}/building-apps/architecture/licensing-and-maintenance#,Licensing, Support & Maintenance>> for which features are free and which need a commercial subscription, and <<{articles}/compatibility#,Supported Technologies>> for the minimum versions of Java, Spring Boot, and other technologies. +New to Vaadin? Follow these in order: + +. <> -- Get from nothing to a running application that you've changed yourself, in minutes. +. <> -- Build a complete Spring Boot application with a Vaadin UI, a database, forms, and navigation, one step at a time. +. <> -- Find the guides that turn your application into one that you can put in front of real users. Need to install Java or an IDE first? See the <> guide. Looking for other ways to create a project, such as Gradle, Spring Initializr, or a template for Quarkus or Jakarta EE? See <>. +== Evaluate Vaadin + +Deciding whether Vaadin fits a project? Read these pages in order. Together, they take about half an hour. + +. <<{articles}/building-apps/architecture/when-to-use-vaadin#,When to Use Vaadin>> -- Which applications Vaadin fits, which it doesn't, and why. +. <<{articles}/building-apps/architecture/runtime-model#,How Vaadin Works at Runtime>> -- Where the UI state lives, what each interaction costs, and what that means for deploying and scaling the application. +. <<{articles}/building-apps/architecture/licensing-and-maintenance#,Licensing, Support & Maintenance>> -- Which features are free, which need a commercial subscription, and how Vaadin versions are maintained. +. <<{articles}/compatibility#,Supported Technologies>> -- The minimum versions of Java, Spring Boot, and other technologies. + +To go further, see the <<{articles}/building-apps/architecture#,Architecture>> Deep Dives. They cover how to structure an application with a Vaadin UI, from layers and packages to monoliths and microservices, and how to measure capacity and test failover. + + +== Start from Existing Code + +You don't need a new project to use Vaadin. If you already have code, start here: + +pass:[] + +A Java application:: +<> shows how the UI fits in next to the application's REST API, security configuration, and JPA entities. + +A REST API or a separate backend:: +Views call your application services directly, so the UI doesn't need a REST API of its own. To keep serving an API to other systems, see <<{articles}/building-apps/integration/rest-api#,REST API Alongside Vaadin>>. To use data from a backend that runs as a separate service, see <<{articles}/building-apps/integration/call-remote-services#,Call a Remote Service>>. + +A Swing application:: +<<{articles}/tools/modernization-toolkit/swing-bridge#,SwingBridge>> runs it in a browser without a rewrite. <<{articles}/tools/swing#,Swing Kit>> renders Vaadin views inside it, so you can replace it one view at a time. The <<{articles}/tools/modernization-toolkit#,Modernization Toolkit>> helps you migrate its source code. + +An older Vaadin version:: +The <<{articles}/upgrading#,Upgrading Guide>> lists the changes that an upgrade needs, and the <<{articles}/upgrading/version-comparison#,Version Comparison>> compares the major versions to help you assess the effort. For Vaadin 7 and 8, <<{articles}/tools/mpr#,Multiplatform Runtime>> runs the existing views and components inside a current application while you migrate them, and the Modernization Toolkit automates part of the refactoring. + +pass:[] + + == Everything in This Section section_outline::[]