> Markdown version of [Next Steps](https://vaadin.com/docs/next/getting-started/next-steps). Section index: [llms.txt](https://vaadin.com/docs/next/getting-started/llms.txt)

# Expand Your Vaadin Project

You now have a working Vaadin application, built either in the [Tutorial](https://vaadin.com/docs/next/getting-started/tutorial.md) or the [Quick Start](https://vaadin.com/docs/next/getting-started/quick-start.md). The next step is to turn it into an application that you can put in front of real users. The [Building Apps](https://vaadin.com/docs/next/building-apps.md) section of the documentation has guides for this. These are the ones most applications need next.

## <a id="build-your-user-interface"></a>Build Your User Interface

Learn how to arrange components with layouts, and how sizing works inside them, in the [Arrange with Layouts](https://vaadin.com/docs/next/building-apps/ui-basics/layouts.md) guide. To change how your application looks, see [Add Styling](https://vaadin.com/docs/next/building-apps/ui-basics/add-styling.md). The [UI Basics](https://vaadin.com/docs/next/building-apps/ui-basics.md) guides cover these and other building blocks, such as dialogs, notifications, and keyboard shortcuts.

## <a id="add-views-navigation"></a>Add Views & Navigation

Expand your application by adding more views, a navigation menu, and ways to pass data between views. See the [Views & Navigation](https://vaadin.com/docs/next/building-apps/views.md) guides for step-by-step instructions.

## <a id="add-data"></a>Add Data

Learn more about forms, validation, and grids, and about loading and saving data consistently, by following the [Forms & Data](https://vaadin.com/docs/next/building-apps/forms-data.md) guides.

## <a id="implement-security"></a>Implement Security

Secure your application with user authentication and authorization. Refer to the [Security](https://vaadin.com/docs/next/building-apps/security.md) guides to learn how.

## <a id="use-a-real-database"></a>Use a Real Database

The tutorial uses an in-memory H2 database, which loses its data when the application stops. Replace it with a production-ready database, and manage its schema with migrations. Follow the [Add Flyway](https://vaadin.com/docs/next/building-apps/forms-data/persistence/add-flyway.md) and [Replace H2](https://vaadin.com/docs/next/building-apps/forms-data/persistence/replace-h2.md) guides for details.

## <a id="test-your-application"></a>Test Your Application

Verify that your views behave as intended with browserless tests, which run against your Java components without starting a browser. See the [Testing](https://vaadin.com/docs/next/building-apps/testing.md) guides to get started.

## <a id="deploy-to-production"></a>Deploy to Production

Build your application for production, and deploy it to a server, a container platform, or the cloud. See [Deploying to Production](https://vaadin.com/docs/next/flow/production.md) for instructions.

Before you decide how to deploy, read [How a Vaadin Application Works](https://vaadin.com/docs/next/building-apps/architecture/runtime-model.md). Vaadin keeps the UI state of each user in server memory, which affects load balancing, scaling, and redeployment.

## <a id="use-an-ai-coding-agent"></a>Use an AI Coding Agent

If you develop with an AI coding agent such as Claude Code or Codex, give it Vaadin’s documentation through the [Vaadin MCP server](https://vaadin.com/docs/next/building-apps/agentic-development/mcp.md). Then follow the [Dev Loop Tutorial](https://vaadin.com/docs/next/building-apps/agentic-development/dev-loop-tutorial.md) to let the agent edit your running application and verify its own changes, without restarts or screenshots.
