Last updated: 2023-05-12
Quickstart (Professional plan)
In Bootify's Professional plan advanced options are available, to add more features and save more time creating the initial version of your project.
Spring Security
Add Spring Security into your project, protecting your REST API with JWT (JSON Web Token) or your frontend with Keycloak or form-based login. Select a table from your custom schema to specify where the users are persisted. Add a registration method if required. Read more
Pagination and search filter
Enable pagination for your CRUD entities to improve working with large datasets in the frontend and/or REST API. Add a simple search filter to narrow the result in the list view.
Tests with @Testcontainers
This option adds integration tests for all REST controllers (CRUD and custom) to your project. Using
@SpringBootTest
, the entire application context is started with the relational
database running in a Docker container.
This allows to test the application in a production-like environment.
Multi-module project setup
Larger applications are often divided into modules to separate concerns. With the multi-module option selected, the project is divided into two modules "base" and "web" together with the proper Maven / Gradle setup. Add custom modules in between.
Flyway / Liquibase / Mongock
Flyway or Liquibase can be selected for schema generation. The SQL script/changelog along with the setup is generated according to the entities in your project. A Mongock changelog with a basic JSON schema can be added for MongoDB.
Custom REST API
In the Controllers tab, custom RestControllers with their endpoints can be
created. Complex request / response objects can be defined in the Data Objects
tab (e.g. "AddTodoRequest"). Path parameters are added inline in the form {contextId}
.
The API of the new project can thus be specified and reviewed by the team and
is directly available in the code base.
Custom frontend controllers
Describe your planned pages and forms with custom frontend controllers. With the input type
GET
, a plain page is created as a placeholder. When selecting a Data Object as
an input type, a form is generated with all fields of this object, validating the
input on submit - ready to be connected to your business logic after downloading the code.
Advanced customization options
Split the services into an interface and an implementing class - if desired. MapStruct can be enabled to provide the necessary setup and use it for mappings in the generated CRUD services. Read more
The Professional plan saves many hours of development time by adding advanced features to your runnable application. Take some time pressure off your shoulders - and start implementing the business logic right away.