diff --git a/articles/getting-started/starters/index.adoc b/articles/getting-started/starters/index.adoc index b66c5a7760..8ff9314de5 100644 --- a/articles/getting-started/starters/index.adoc +++ b/articles/getting-started/starters/index.adoc @@ -3,43 +3,12 @@ title: Starters page-title: Different ways of starting a Vaadin project description: Learn about different ways to start a Vaadin project. meta-description: Discover different ways to start a Vaadin project, including non-Spring Boot starters and different setup methods beyond the recommended approach. -layout: tabbed-page -tab-title: Overview order: 20 --- = Different Ways of Starting a Vaadin Project - -== Vaadin Start - -The recommended way to start a Vaadin project is by using https://start.vaadin.com[Vaadin Start], which generates a ready-to-run Spring Boot and Maven based project. - -link:https://start.vaadin.com/[Open Vaadin Start, role="button primary water"] - -You can choose to include a sample view or create an empty project. - - -== IDE Plugins - -If you have <<../dev-environment/install-ide#,installed the Vaadin plugin for your IDE>>, you can create a new Vaadin project directly from the IDE. Under the hood, the IDE plugin uses Vaadin Start to generate the project. This means you can choose to include a sample view or create an empty project. - - -== Non-Spring Boot Templates - -If you prefer a different technology stack than Spring Boot and Maven, you can find _Hello World_ starter templates for other frameworks here: - -* https://github.com/vaadin/skeleton-starter-flow[Flow / Java, Maven, and Jetty] -* https://github.com/vaadin/base-starter-flow-quarkus[Flow / Java, Maven, and Quarkus] -* https://github.com/vaadin/base-starter-spring-gradle[Flow / Java, Gradle, and Spring Boot] -* https://github.com/vaadin/skeleton-starter-kotlin-spring[Flow / Kotlin, Maven, and Spring Boot] -* https://github.com/vaadin/skeleton-starter-hilla-react-gradle[Hilla / React, Gradle, and Spring Boot] - - -[IMPORTANT] -Some guides, such as <<{articles}/getting-started#,Getting Started>> and <<{articles}/building-apps#,Building Apps>>, may not fully apply to projects that are not based on Spring Boot and Maven. - -== Other Ways to Start a Project +You can create a new Vaadin project in several ways: section_outline::[] diff --git a/articles/getting-started/starters/start/images/start.png b/articles/getting-started/starters/start/images/start.png new file mode 100644 index 0000000000..5e91eb77d0 Binary files /dev/null and b/articles/getting-started/starters/start/images/start.png differ diff --git a/articles/getting-started/starters/start/index.adoc b/articles/getting-started/starters/start/index.adoc new file mode 100644 index 0000000000..374c46b048 --- /dev/null +++ b/articles/getting-started/starters/start/index.adoc @@ -0,0 +1,26 @@ +--- +title: Vaadin Start +page-title: Create a Project with Vaadin Start +description: The recommended way to start a Vaadin project. +meta-description: How to create a Vaadin project using Vaadin Start, the recommended way to start a Vaadin project. +order: 1 +--- + += Create a Project with Vaadin Start + +The recommended way to start a Vaadin project is by using https://start.vaadin.com[Vaadin Start], which generates a ready-to-run Spring Boot and Maven based project: + +[.device] +image::images/start.png[Vaadin Start] + +link:https://start.vaadin.com/[Open Vaadin Start, role="button primary water"] + +You can choose to include a sample view or create an empty project. + +By expanding the *Configure Project Settings* section, you can customize the project settings: + +* Select Vaadin version +* Select Java version +* Specify Maven group ID and artifact ID + +When you click the [guibutton]*Download* button, a ZIP file containing the generated project is downloaded to your computer. You can then extract the ZIP file and <>. diff --git a/articles/tools/start/_images/customize-theming.png b/articles/getting-started/starters/start/playground/_images/customize-theming.png similarity index 100% rename from articles/tools/start/_images/customize-theming.png rename to articles/getting-started/starters/start/playground/_images/customize-theming.png diff --git a/articles/tools/start/_images/download-dialog.png b/articles/getting-started/starters/start/playground/_images/download-dialog.png similarity index 100% rename from articles/tools/start/_images/download-dialog.png rename to articles/getting-started/starters/start/playground/_images/download-dialog.png diff --git a/articles/tools/start/_images/edit-entity.png b/articles/getting-started/starters/start/playground/_images/edit-entity.png similarity index 100% rename from articles/tools/start/_images/edit-entity.png rename to articles/getting-started/starters/start/playground/_images/edit-entity.png diff --git a/articles/tools/start/_images/example-project.png b/articles/getting-started/starters/start/playground/_images/example-project.png similarity index 100% rename from articles/tools/start/_images/example-project.png rename to articles/getting-started/starters/start/playground/_images/example-project.png diff --git a/articles/tools/start/_images/hello-world-starters.png b/articles/getting-started/starters/start/playground/_images/hello-world-starters.png similarity index 100% rename from articles/tools/start/_images/hello-world-starters.png rename to articles/getting-started/starters/start/playground/_images/hello-world-starters.png diff --git a/articles/tools/start/_images/master-detail-template.png b/articles/getting-started/starters/start/playground/_images/master-detail-template.png similarity index 100% rename from articles/tools/start/_images/master-detail-template.png rename to articles/getting-started/starters/start/playground/_images/master-detail-template.png diff --git a/articles/tools/start/_images/my-projects.png b/articles/getting-started/starters/start/playground/_images/my-projects.png similarity index 100% rename from articles/tools/start/_images/my-projects.png rename to articles/getting-started/starters/start/playground/_images/my-projects.png diff --git a/articles/tools/start/_images/project-view.png b/articles/getting-started/starters/start/playground/_images/project-view.png similarity index 100% rename from articles/tools/start/_images/project-view.png rename to articles/getting-started/starters/start/playground/_images/project-view.png diff --git a/articles/tools/start/_images/security-setup.png b/articles/getting-started/starters/start/playground/_images/security-setup.png similarity index 100% rename from articles/tools/start/_images/security-setup.png rename to articles/getting-started/starters/start/playground/_images/security-setup.png diff --git a/articles/getting-started/starters/start/playground/index.adoc b/articles/getting-started/starters/start/playground/index.adoc new file mode 100644 index 0000000000..2cd22fd70f --- /dev/null +++ b/articles/getting-started/starters/start/playground/index.adoc @@ -0,0 +1,70 @@ +--- +title: Playground +page-title: Create a new Vaadin project using Vaadin Start Playground +order: 20 +description: Description of possibilities with Vaadin Start Playground. +meta-description: Create a Vaadin project using Vaadin Start Playground, a tool that allows you to visually create a custom Spring Boot based Vaadin Flow or Hilla app starter. +--- + + += The Vaadin Start Playground + +The Vaadin Start Playground online interface allows you to manage, configure and download the core of functional Vaadin projects. You can use them as a starting point to create your own Vaadin applications. Even more so, they allow you to do several fundamental things, easily. + +image::_images/example-project.png[Project Built with Vaadin Start Playground UI] + +https://start.vaadin.com?preset=latest[Open Vaadin Start Playground, role="button primary water"] + + +== Manage Projects + +With Vaadin Start Playground, you can work on multiple projects. You can find a list of your projects in the `My Projects` section. You can download your project from there, directly. + +.Projects List +image::_images/my-projects.png[height=75%, width=75%, List of Projects] + + +== Add Views + +Vaadin Start Playground allows you to add several views to your project. You can select the initial content of each view from a list of more than fifteen Flow and Hilla templates. For example, you can include views based on the Master-Detail template, which can be used to manage an entity's data. + +The screenshot here shows the Vaadin Start Playground UI with the Add View dialog open, showing the Master-Detail template selected: + +.Master-Detail Template +image::_images/master-detail-template.png[Vaadin Start Playground UI with Master-Detail Template Selected] + +You can then add and modify JPA entities. These entities are downloaded with the generated project, along with their corresponding Spring Data classes, such as the [classname]`Repository` and [classname]`Service`. You can see the relevant parts highlighted in the screenshots here: + +.Edit Data Entity +[.fill.white] +image::_images/edit-entity.png[Edit Entities, width=100%] + + +== Login & Access Control + +You can also configure security and control access. A login view is added if you configure one or more views that require a logged-in user. + +In this screenshot, you can see the Vaadin Start Playground UI with the view details popover open, showing the options for the View Access control: + +.View Access Control Setup +image::_images/security-setup.png[Vaadin Start Playground UI with View Access Controls, width=60%] + + +== Customize Theme + +Vaadin Start Playground lets you easily change the look and feel of the application. Specifically, you can adjust the application's colors, typography, style, sizing, and spacing. + +This next screenshot shows the Vaadin Start Playground UI with the Theme sidebar active, showing the color palette options: + +.Theme Customization +image::_images/customize-theming.png[Vaadin Start Playground UI with Theme Color Palettes, width=40%] + + +== Technical Configuration + +You can also add helpful project settings. For example, you can generate the deployment files for Docker, and Kubernetes. Or you can select between H2 and PostgreSQL as the database to use for the project. + +This screenshot shows the Vaadin Start Playground UI with the Download Project dialog open, with all of the project settings shown: + +.Download Project Dialog +image::_images/download-dialog.png[Vaadin Start Playground UI with Download Project Dialog] diff --git a/articles/tools/start/view-builder/images/view-builder-layouts.png b/articles/getting-started/starters/start/playground/view-builder/images/view-builder-layouts.png similarity index 100% rename from articles/tools/start/view-builder/images/view-builder-layouts.png rename to articles/getting-started/starters/start/playground/view-builder/images/view-builder-layouts.png diff --git a/articles/tools/start/view-builder/images/view-builder-publish-gh.png b/articles/getting-started/starters/start/playground/view-builder/images/view-builder-publish-gh.png similarity index 100% rename from articles/tools/start/view-builder/images/view-builder-publish-gh.png rename to articles/getting-started/starters/start/playground/view-builder/images/view-builder-publish-gh.png diff --git a/articles/tools/start/view-builder/images/view-builder-share.png b/articles/getting-started/starters/start/playground/view-builder/images/view-builder-share.png similarity index 100% rename from articles/tools/start/view-builder/images/view-builder-share.png rename to articles/getting-started/starters/start/playground/view-builder/images/view-builder-share.png diff --git a/articles/tools/start/view-builder/images/view-builder-start.png b/articles/getting-started/starters/start/playground/view-builder/images/view-builder-start.png similarity index 100% rename from articles/tools/start/view-builder/images/view-builder-start.png rename to articles/getting-started/starters/start/playground/view-builder/images/view-builder-start.png diff --git a/articles/tools/start/view-builder/images/view-with-components.png b/articles/getting-started/starters/start/playground/view-builder/images/view-with-components.png similarity index 100% rename from articles/tools/start/view-builder/images/view-with-components.png rename to articles/getting-started/starters/start/playground/view-builder/images/view-with-components.png diff --git a/articles/tools/start/view-builder/index.adoc b/articles/getting-started/starters/start/playground/view-builder/index.adoc similarity index 73% rename from articles/tools/start/view-builder/index.adoc rename to articles/getting-started/starters/start/playground/view-builder/index.adoc index 308a0f3214..36c2c9b407 100644 --- a/articles/tools/start/view-builder/index.adoc +++ b/articles/getting-started/starters/start/playground/view-builder/index.adoc @@ -2,26 +2,26 @@ title: Editable Views page-title: How to create custom views with Visual View Builder | Vaadin description: Visual View Builder enables you to create new views with custom layouts and components without touching code. -meta-description: Discover how to use Visual View Builder in Vaadin Start to design custom views with drag-and-drop functionality. +meta-description: Discover how to use Visual View Builder in Vaadin Start playground to design custom views with drag-and-drop functionality. --- = Visual View Builder -Visual View Builder is a tool in the Vaadin Start application generator. It allows you to assemble custom views by dragging and dropping items into place. When you're done, you can download and run the application locally, or share a preview with others. +Visual View Builder is a tool in the Vaadin Start playground application generator. It allows you to assemble custom views by dragging and dropping items into place. When you're done, you can download and run the application locally, or share a preview with others. Visual View Builder generates the required code declarations, configurations, and sample data for your application. .Theming & Other Features [TIP] -Visual View Builder is part of Vaadin Start. You can customize the application theme, settings (e.g., Java version), and more before downloading or sharing the application. +Visual View Builder is part of the Vaadin Start playground. You can customize the application theme, settings (e.g., Java version), and more before downloading or sharing the application. == Creating a Project with Custom View -Go to `https://start.vaadin.com` and start new project. After opening a project, click [guibutton]*+ Add View*. Then choose [guilabel]*Layout with Content Areas* from the list and confirm. This opens View Builder. +Go to `https://start.vaadin.com` and start new project in the playground. After opening a project, click [guibutton]*+ Add View*. Then choose [guilabel]*Layout with Content Areas* from the list and confirm. This opens View Builder. -image::images/view-builder-start.png[Add New View Builder View to a Vaadin Start Project] +image::images/view-builder-start.png[Add New View Builder View to a Vaadin Start playground Project] === Building a View diff --git a/articles/getting-started/starters/templates.adoc b/articles/getting-started/starters/templates.adoc new file mode 100644 index 0000000000..9bb90342ea --- /dev/null +++ b/articles/getting-started/starters/templates.adoc @@ -0,0 +1,22 @@ +--- +title: Templates +page-title: Vaadin Project Templates +description: Clone a template project to create a Vaadin application with a different technology stack. +meta-description: How to create a Vaadin project by cloning a template for a different technology stack. +order: 2 +--- + + += Create a Project by Cloning a Template + +If you prefer a different technology stack than Spring Boot and Maven, you can find _Hello World_ starter templates for other frameworks here: + +* https://github.com/vaadin/skeleton-starter-flow[Flow / Java, Maven, and Jetty] +* https://github.com/vaadin/base-starter-flow-quarkus[Flow / Java, Maven, and Quarkus] +* https://github.com/vaadin/base-starter-spring-gradle[Flow / Java, Gradle, and Spring Boot] +* https://github.com/vaadin/skeleton-starter-kotlin-spring[Flow / Kotlin, Maven, and Spring Boot] +* https://github.com/vaadin/skeleton-starter-hilla-react-gradle[Hilla / React, Gradle, and Spring Boot] + + +[IMPORTANT] +Some guides, such as <> and <>, may not fully apply to projects that are not based on Spring Boot and Maven. diff --git a/articles/hilla/lit/reference/gradle.adoc b/articles/hilla/lit/reference/gradle.adoc index 57d3a8c4cd..a5ecbf6a8d 100644 --- a/articles/hilla/lit/reference/gradle.adoc +++ b/articles/hilla/lit/reference/gradle.adoc @@ -255,7 +255,7 @@ gradlew hillaGenerate .Vaadin Gradle Plugin Has Other Tasks [NOTE] -Note that there are other tasks provided by the Vaadin Gradle plugin such as `vaadinPrepareFrontend` and `vaadinBuildFrontend`, and as they are not Hilla specific tasks that are not covered in this tutorial. For more information, please see <<{articles}/getting-started/alternatives/gradle#, Starting a Vaadin Project with Gradle>>. +Note that there are other tasks provided by the Vaadin Gradle plugin such as `vaadinPrepareFrontend` and `vaadinBuildFrontend`, and as they are not Hilla specific tasks that are not covered in this tutorial. For more information, please see <<{articles}/getting-started/starters/gradle#, Starting a Vaadin Project with Gradle>>. [#_all_options] == Plugin Configuration Options diff --git a/articles/tools/index.adoc b/articles/tools/index.adoc index 4a1ca3b390..3d3655d39e 100644 --- a/articles/tools/index.adoc +++ b/articles/tools/index.adoc @@ -26,16 +26,6 @@ Edit your application directly in the browser yourself or ask the AI copilot to <<{tools-path-prefix}copilot#,See Copilot>> -[.card.large] -=== Start - -Kickstart your Vaadin project with ready-made view templates and get the project up and running without manual configuration. - -[.sr-only] -<<{tools-path-prefix}start#,See Start>> - - - [.cards.large.quiet] == Acceleration Kits diff --git a/articles/tools/start/index.adoc b/articles/tools/start/index.adoc deleted file mode 100644 index 6c82c8fb5c..0000000000 --- a/articles/tools/start/index.adoc +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: Start -page-title: Create a new Vaadin project using Vaadin Start -order: 20 -description: Description of possibilities with Vaadin Start. -meta-description: Create a Vaadin project using Vaadin Start, a tool that allows you to visually create a custom Spring Boot based Vaadin Flow or Hilla app starter. ---- - - -= Vaadin Start - -The Vaadin Start online interface allows you to manage, configure and download the core of functional Vaadin projects. You can use them as a starting point to create your own Vaadin applications. Even more so, they allow you to do several fundamental things, easily. - -image::_images/example-project.png[Project Built with Vaadin Start Online Interface] - -https://start.vaadin.com?preset=latest[Open Vaadin Start, role="button primary water"] - - -== Manage Projects - -With Vaadin Start, you can work on multiple projects. You can find a list of your projects in the `My Projects` section. You can download your project from there, directly. - -.Projects List -image::_images/my-projects.png[height=75%, width=75%, List of Projects] - - -== Add Views - -Vaadin Start allows you to add several views to your project. You can select the initial content of each view from a list of more than fifteen Flow and Hilla templates. For example, you can include views based on the Master-Detail template, which can be used to manage an entity's data. - -The screenshot here shows the Vaadin Start UI with the Add View dialog open, showing the Master-Detail template selected: - -.Master-Detail Template -image::_images/master-detail-template.png[Vaadin Start UI with Master-Detail Template Selected] - -You can then add and modify JPA entities. These entities are downloaded with the generated project, along with their corresponding Spring Data classes, such as the [classname]`Repository` and [classname]`Service`. You can see the relevant parts highlighted in the screenshots here: - -.Edit Data Entity -[.fill.white] -image::_images/edit-entity.png[Edit Entities, width=100%] - - -== Login & Access Control - -You can also configure security and control access. A login view is added if you configure one or more views that require a logged-in user. - -In this screenshot, you can see the Vaadin Start UI with the view details popover open, showing the options for the View Access control: - -.View Access Control Setup -image::_images/security-setup.png[Vaadin Start UI with View Access Controls, width=60%] - - -== Customize Theme - -Vaadin Start lets you easily change the look and feel of the application. Specifically, you can adjust the application's colors, typography, style, sizing, and spacing. - -This next screenshot shows the Vaadin Start UI with the Theme sidebar active, showing the color palette options: - -.Theme Customization -image::_images/customize-theming.png[Vaadin Start UI with Theme Color Palettes, width=40%] - - -== Technical Configuration - -You can also add helpful project settings. For example, you can generate the deployment files for Docker, and Kubernetes. Or you can select between H2 and PostgreSQL as the database to use for the project. - -This screenshot shows the Vaadin Start UI with the Download Project dialog open, with all of the project settings shown: - -.Download Project Dialog -image::_images/download-dialog.png[Vaadin Start UI with Download Project Dialog] - - -== Hello World Projects - -To start with a simplified project template -- without adding and configuring any views -- you can configure and download a "Hello World" starter from the landing page of Vaadin Start. - -This screenshot shows the configuration options for the Hello World starter: - -.Hello World Starter -image::_images/hello-world-starters.png[Hello World Starter, width=60%]