spotify / ruler
Components

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Component Sizes (Lines of Code)
The "primary" logical decomposition has 8 components.
  • 84 files, 3,505 LOC (100.0% vs. main code).
  • "ruler-common" is biggest, containing 32.84% of LOC.
  • "ROOT" is smallest, containing 2.48% of LOC.


ruler-common1151 LOC (32%) 28 files
ruler-frontend1139 LOC (32%) 16 files
ruler-gradle-plugin478 LOC (13%) 7 files
ruler-cli223 LOC (6%) 2 files
sample191 LOC (5%) 14 files
buildSrc124 LOC (3%) 3 files
ruler-models112 LOC (3%) 10 files
ROOT87 LOC (2%) 4 files
Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
buildSrc58 commits (30%)
ruler-common39 commits (20%)
ruler-gradle-plugin34 commits (17%)
ROOT20 commits (10%)
sample19 commits (9%)
ruler-frontend17 commits (8%)
ruler-cli14 commits (7%)
ruler-models12 commits (6%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2025 2024 2023 2022 2021
ruler-common
6
22
54
ruler-frontend
19
1
2
3
7
ruler-gradle-plugin
8
7
15
12
14
buildSrc
10
21
15
18
ruler-cli
1
7
8
sample
3
4
4
16
20
ROOT
3
4
9
9
ruler-models
2
1
12
12


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G ruler-gradle-plugin ruler-gradle-plugin ruler-gradle-plugin--ruler-gradle-plugin 2 ruler-frontend ruler-frontend ruler-gradle-plugin--ruler-frontend 3 ruler-common ruler-common ruler-gradle-plugin--ruler-common 2 ruler-frontend--ruler-frontend 1 ruler-common--ruler-frontend 2 ruler-common--ruler-common 2 ruler-models ruler-models ruler-models--ruler-gradle-plugin 1 ruler-models--ruler-frontend 1 ruler-models--ruler-common 1 ruler-models--ruler-models 1 ruler-cli ruler-cli ruler-cli--ruler-frontend 1 ruler-cli--ruler-common 1 sample sample sample--ruler-gradle-plugin 1 sample--ruler-frontend 1 sample--ruler-common 1


2025-05-04 12:41