Production-ready support for your Spring Boot application
A Spring Boot starter with JPA entities, auto-configuration, and full bean lifecycle hooks. Drops into your application context and feels native to the Spring ecosystem.
implementation 'dev.escalated:escalated-spring'Why Escalated
Why Escalated for Spring Boot
Built for the Spring ecosystem: auto-config, beans, and JPA as first-class citizens.
Auto-Configuration
Add the dependency and `@EnableEscalated` — beans register themselves, JPA entities are discovered, and the support endpoints mount under your configured prefix. Zero XML.
JPA Entities, Not DTOs
Tickets, replies, and SLAs are full JPA entities. Query with Spring Data repositories, compose with JPQL, or drop to Criteria — they behave like the rest of your domain.
Bean Lifecycle Aware
Services respect `@PostConstruct`, `@PreDestroy`, and profile-based conditionals. Override any bean with `@Primary` or `@Qualifier` — standard Spring mechanics apply.
Getting Started
How It Works
Three steps from zero to a working help desk.
Add the Dependency
implementation 'dev.escalated:escalated-spring'
Enable the Starter
@EnableEscalated
Run & Migrate
Spring Boot auto-config does the rest — Flyway migrations run on startup, endpoints register under /support, and health checks flow into Actuator.
Features
Spring-Native Features
Every integration point designed for Spring Boot idioms.
Flyway Migrations
All schema ships as Flyway migrations. Works with Postgres, MySQL, and H2 — or swap in Liquibase via standard Spring Boot configuration.
Spring Data Repositories
Each entity comes with a JpaRepository interface. Inject it anywhere, extend with your own derived queries, or plug in QueryDSL.
Actuator Integration
Escalated exposes its own Actuator endpoint with ticket counts, SLA health, and background-worker status — feeds straight into your existing dashboards.
Async & @Scheduled
Background workers use `@Async` and `@Scheduled`, so they respect your thread pool configuration and play nicely with other scheduled work in your app.
Security Compatible
Works with Spring Security out of the box. Define your own `SecurityFilterChain` — the package's endpoints honour whatever matcher you configure.
Testing with @SpringBootTest
Full integration-test support via `@SpringBootTest`. Testcontainers, H2 in-memory, or any Postgres/MySQL you prefer.
Code
Idiomatic Spring Boot
One annotation. Auto-configuration handles the rest.
// Application.java package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import dev.escalated.EnableEscalated; @SpringBootApplication @EnableEscalated // Auto-registers entities, controllers, and services public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
Ready to add support tickets to your Spring Boot service?
Add the dependency, annotate your app, and start the server. Open source, self-hosted, and built for the Spring ecosystem.