Generated project

This commit is contained in:
start.vaadin.com 2025-09-25 08:25:10 +00:00
commit 6317f9e12f
21 changed files with 1142 additions and 0 deletions

86
README.md Normal file
View file

@ -0,0 +1,86 @@
# App README
- [ ] TODO Replace or update this README with instructions relevant to your application
## Project Structure
The sources of your App have the following structure:
```
src
├── main/frontend
│ └── themes
│ └── default
│ ├── styles.css
│ └── theme.json
├── main/java
│ └── [application package]
│ ├── base
│ │ └── ui
│ │ ├── component
│ │ │ └── ViewToolbar.java
│ │ ├── MainErrorHandler.java
│ │ └── MainLayout.java
│ ├── examplefeature
│ │ ├── ui
│ │ │ └── TaskListView.java
│ │ ├── Task.java
│ │ ├── TaskRepository.java
│ │ └── TaskService.java
│ └── Application.java
└── test/java
└── [application package]
└── examplefeature
└── TaskServiceTest.java
```
The main entry point into the application is `Application.java`. This class contains the `main()` method that start up
the Spring Boot application.
The skeleton follows a *feature-based package structure*, organizing code by *functional units* rather than traditional
architectural layers. It includes two feature packages: `base` and `examplefeature`.
* The `base` package contains classes meant for reuse across different features, either through composition or
inheritance. You can use them as-is, tweak them to your needs, or remove them.
* The `examplefeature` package is an example feature package that demonstrates the structure. It represents a
*self-contained unit of functionality*, including UI components, business logic, data access, and an integration test.
Once you create your own features, *you'll remove this package*.
The `src/main/frontend` directory contains an empty theme called `default`, based on the Lumo theme. It is activated in
the `Application` class, using the `@Theme` annotation.
## Starting in Development Mode
To start the application in development mode, import it into your IDE and run the `Application` class.
You can also start the application from the command line by running:
```bash
./mvnw
```
## Building for Production
To build the application in production mode, run:
```bash
./mvnw -Pproduction package
```
To build a Docker image, run:
```bash
docker build -t my-application:latest .
```
If you use commercial components, pass the license key as a build secret:
```bash
docker build --secret id=proKey,src=$HOME/.vaadin/proKey .
```
## Getting Started
The [Getting Started](https://vaadin.com/docs/latest/getting-started) guide will quickly familiarize you with your new
App implementation. You'll learn how to set up your development environment, understand the project
structure, and find resources to help you add muscles to your skeleton — transforming it into a fully-featured
application.