Kronicle Service

Component Name

Kronicle Service

Component Type




Key Software

Gradle 7.6 Spring Boot 3.0.2 Guava 31.1-jre Jackson 2.14.1, 2.14.2 Spring Cloud 2022.0.1 Lombok 1.18.26 Kotlin 1.7.21 Vue 2.6.14 Nuxt 2.15.8


The microservice that powers Kronicle. All the data collection (scanning) and processing is performed in this microservice, with kronicle-app then responsible for placing a web UI on top of that


Table of Contents

The microservice is built with Java and Spring Boot



  • Uses Repo Finders to discover Git repos that belong to an organisation. Also detects the presense of kronicle.yaml metadata files in any of the Git repos that are found. Currently there are Repo Finders for GitHub and Bitbucket Server. Bitbucket Server is the self-hosted version of Bitbucket and not the cloud version. This happens once every 15 minutes.

  • Loads the metadata from any Git repos that contain a kronicle.yaml file. This happens once every 15 minutes.

  • Executes Scanners that use the metadata from kronicle.yaml files to fetch additional data from sources like the Git repos themselves (finding dependencies in Gradle projects, counting lines of code, finding the names of frequent code committers), Zipkin, SonarQube etc. The data found by the Scanners is combined with the metadata from the kronicle.yaml files.
    This happens once every 15 minutes.

  • Executes Tests against the data found from kronicle.yaml files and Scanners. Knonicle includes built-in tests for things like minimum 80% code coverage (using coverage data from SonarQube). This happens once every 15 minutes.

  • Provides an web API for querying all the data held by the Kronicle Service. The Kronicle App is powered by the Kronicle Service's API.


Diagram Action Description
Structure - kronicle-service - production View Diagram

An auto-generated diagram that shows the structure of the kronicle-service component in the production environment


Doc Action Description
Example Docs View Doc
Kronicle App v0.1.426