tech-debt-visualizer 0.2.15 → 0.2.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/reports/assets/report.css +75 -103
- package/package.json +1 -1
|
@@ -74,17 +74,10 @@ body.dashboard-page::before {
|
|
|
74
74
|
radial-gradient(circle at 20% 30%, rgba(255, 107, 53, 0.08) 0%, transparent 40%),
|
|
75
75
|
radial-gradient(circle at 80% 70%, rgba(77, 56, 235, 0.06) 0%, transparent 40%),
|
|
76
76
|
radial-gradient(circle at 50% 50%, rgba(6, 255, 165, 0.04) 0%, transparent 50%);
|
|
77
|
-
animation: bgFloat 20s ease-in-out infinite;
|
|
78
77
|
z-index: 0;
|
|
79
78
|
pointer-events: none;
|
|
80
79
|
}
|
|
81
80
|
|
|
82
|
-
@keyframes bgFloat {
|
|
83
|
-
0%, 100% { transform: translate(0, 0) rotate(0deg); }
|
|
84
|
-
33% { transform: translate(30px, -30px) rotate(5deg); }
|
|
85
|
-
66% { transform: translate(-20px, 20px) rotate(-5deg); }
|
|
86
|
-
}
|
|
87
|
-
|
|
88
81
|
body.dashboard-page {
|
|
89
82
|
padding-bottom: 0;
|
|
90
83
|
height: 100vh;
|
|
@@ -188,9 +181,9 @@ body.dashboard-page {
|
|
|
188
181
|
.dashboard-main {
|
|
189
182
|
flex: 1;
|
|
190
183
|
min-height: 0;
|
|
191
|
-
max-width:
|
|
184
|
+
max-width: 100%;
|
|
192
185
|
margin: 0 auto;
|
|
193
|
-
padding:
|
|
186
|
+
padding: 0.5rem 0.75rem;
|
|
194
187
|
width: 100%;
|
|
195
188
|
overflow: hidden;
|
|
196
189
|
display: flex;
|
|
@@ -205,7 +198,7 @@ body.dashboard-page {
|
|
|
205
198
|
display: grid;
|
|
206
199
|
grid-template-columns: 1fr 1fr;
|
|
207
200
|
grid-template-rows: auto 1fr;
|
|
208
|
-
gap:
|
|
201
|
+
gap: 0.5rem;
|
|
209
202
|
align-items: stretch;
|
|
210
203
|
}
|
|
211
204
|
|
|
@@ -237,24 +230,27 @@ body.dashboard-page {
|
|
|
237
230
|
}
|
|
238
231
|
|
|
239
232
|
@media (max-width: 900px) {
|
|
240
|
-
body.dashboard-page { height: auto; overflow: auto; }
|
|
233
|
+
body.dashboard-page { height: auto; overflow: auto; min-height: 100vh; }
|
|
234
|
+
.dashboard-main { padding: 0.5rem 0.75rem; min-height: 0; }
|
|
241
235
|
.dashboard-grid-2x2 {
|
|
242
236
|
grid-template-columns: 1fr;
|
|
243
237
|
grid-template-rows: auto auto auto auto;
|
|
244
238
|
height: auto;
|
|
245
|
-
gap:
|
|
239
|
+
gap: 0.5rem;
|
|
246
240
|
}
|
|
247
|
-
.dashboard-cell-heatmap .panel-body-heatmap { min-height:
|
|
248
|
-
.dashboard-cell-list .panel-body { min-height:
|
|
249
|
-
.panel-score-pop .score-num { font-size:
|
|
250
|
-
.panel-score-pop .score-of { font-size:
|
|
241
|
+
.dashboard-cell-heatmap .panel-body-heatmap { min-height: 160px; }
|
|
242
|
+
.dashboard-cell-list .panel-body { min-height: 160px; }
|
|
243
|
+
.panel-score-pop .score-num { font-size: 2rem; }
|
|
244
|
+
.panel-score-pop .score-of { font-size: 0.9rem; }
|
|
251
245
|
}
|
|
252
246
|
|
|
253
247
|
@media (max-width: 560px) {
|
|
254
248
|
.dashboard-header { padding: 0.5rem 0.75rem; }
|
|
255
|
-
.dashboard-main { padding: 0.
|
|
256
|
-
.dashboard-grid-2x2 { gap:
|
|
257
|
-
#treemap { grid-template-columns: repeat(auto-fill, minmax(
|
|
249
|
+
.dashboard-main { padding: 0.4rem 0.5rem; }
|
|
250
|
+
.dashboard-grid-2x2 { gap: 0.4rem; }
|
|
251
|
+
#treemap { grid-template-columns: repeat(auto-fill, minmax(64px, 1fr)); gap: 0.3rem; }
|
|
252
|
+
.treemap-cell { padding: 0.25rem; }
|
|
253
|
+
.treemap-cell-name { font-size: 0.55rem; }
|
|
258
254
|
}
|
|
259
255
|
|
|
260
256
|
/* ——— Footer (hidden when empty; button moved to header) ——— */
|
|
@@ -442,7 +438,7 @@ body.dashboard-page {
|
|
|
442
438
|
display: block;
|
|
443
439
|
}
|
|
444
440
|
|
|
445
|
-
/* ——— Panels: card look
|
|
441
|
+
/* ——— Panels: card look (no hover animation on main four) ——— */
|
|
446
442
|
.panel {
|
|
447
443
|
background: var(--bg-secondary);
|
|
448
444
|
border: 1px solid var(--border-subtle);
|
|
@@ -450,35 +446,10 @@ body.dashboard-page {
|
|
|
450
446
|
box-shadow: var(--shadow);
|
|
451
447
|
overflow: hidden;
|
|
452
448
|
position: relative;
|
|
453
|
-
transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.4s ease, box-shadow 0.4s ease;
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
.panel::before {
|
|
457
|
-
content: "";
|
|
458
|
-
position: absolute;
|
|
459
|
-
top: 0;
|
|
460
|
-
left: 0;
|
|
461
|
-
right: 0;
|
|
462
|
-
height: 3px;
|
|
463
|
-
background: linear-gradient(90deg, var(--accent-orange), var(--accent-yellow));
|
|
464
|
-
transform: scaleX(0);
|
|
465
|
-
transform-origin: left;
|
|
466
|
-
transition: transform 0.6s ease;
|
|
467
|
-
z-index: 1;
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
.panel:hover {
|
|
471
|
-
transform: translateY(-5px);
|
|
472
|
-
border-color: rgba(255, 107, 53, 0.25);
|
|
473
|
-
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 107, 53, 0.15);
|
|
474
|
-
}
|
|
475
|
-
|
|
476
|
-
.panel:hover::before {
|
|
477
|
-
transform: scaleX(1);
|
|
478
449
|
}
|
|
479
450
|
|
|
480
451
|
.panel-header {
|
|
481
|
-
padding:
|
|
452
|
+
padding: 0.5rem 0.75rem;
|
|
482
453
|
border-bottom: 1px solid var(--border-subtle);
|
|
483
454
|
background: rgba(0, 0, 0, 0.08);
|
|
484
455
|
flex-shrink: 0;
|
|
@@ -487,9 +458,9 @@ body.dashboard-page {
|
|
|
487
458
|
.panel-title {
|
|
488
459
|
color: var(--text-muted);
|
|
489
460
|
font-family: "Syne", sans-serif;
|
|
490
|
-
font-size: 0.
|
|
461
|
+
font-size: 0.8rem;
|
|
491
462
|
font-weight: 700;
|
|
492
|
-
letter-spacing:
|
|
463
|
+
letter-spacing: 2px;
|
|
493
464
|
text-transform: uppercase;
|
|
494
465
|
}
|
|
495
466
|
|
|
@@ -509,7 +480,7 @@ body.dashboard-page {
|
|
|
509
480
|
}
|
|
510
481
|
|
|
511
482
|
.panel-body {
|
|
512
|
-
padding:
|
|
483
|
+
padding: 0.65rem 0.85rem;
|
|
513
484
|
}
|
|
514
485
|
|
|
515
486
|
.panel-body-center {
|
|
@@ -528,14 +499,14 @@ body.dashboard-page {
|
|
|
528
499
|
|
|
529
500
|
.panel-score .panel-body-score {
|
|
530
501
|
text-align: center;
|
|
531
|
-
padding:
|
|
502
|
+
padding: 0.5rem 0.65rem;
|
|
532
503
|
}
|
|
533
504
|
|
|
534
505
|
.score-numeric {
|
|
535
506
|
display: flex;
|
|
536
507
|
align-items: baseline;
|
|
537
508
|
justify-content: center;
|
|
538
|
-
gap: 0.
|
|
509
|
+
gap: 0.4rem; /* space between number and "of 5" */
|
|
539
510
|
margin-bottom: 0.5rem;
|
|
540
511
|
}
|
|
541
512
|
|
|
@@ -596,35 +567,35 @@ body.dashboard-page {
|
|
|
596
567
|
}
|
|
597
568
|
|
|
598
569
|
.panel-score-pop .panel-body-score {
|
|
599
|
-
padding:
|
|
570
|
+
padding: 0.6rem 0.75rem;
|
|
600
571
|
position: relative;
|
|
601
572
|
}
|
|
602
573
|
|
|
603
574
|
.panel-score-pop .panel-header .panel-title {
|
|
604
|
-
font-size: 0.
|
|
605
|
-
letter-spacing:
|
|
575
|
+
font-size: 0.7rem;
|
|
576
|
+
letter-spacing: 2px;
|
|
606
577
|
color: var(--text-muted);
|
|
607
578
|
margin-bottom: 0;
|
|
608
579
|
}
|
|
609
580
|
|
|
610
581
|
.panel-score-pop .score-numeric {
|
|
611
|
-
margin-bottom: 0.
|
|
582
|
+
margin-bottom: 0.25rem;
|
|
612
583
|
}
|
|
613
584
|
|
|
614
585
|
.panel-score-pop .score-num {
|
|
615
586
|
font-family: "Syne", sans-serif;
|
|
616
|
-
font-size: 5rem;
|
|
587
|
+
font-size: 2.5rem;
|
|
617
588
|
font-weight: 800;
|
|
618
589
|
line-height: 1;
|
|
619
590
|
background: linear-gradient(180deg, var(--accent-orange) 0%, var(--accent-red) 100%);
|
|
620
591
|
-webkit-background-clip: text;
|
|
621
592
|
-webkit-text-fill-color: transparent;
|
|
622
593
|
background-clip: text;
|
|
623
|
-
filter: drop-shadow(0 0
|
|
594
|
+
filter: drop-shadow(0 0 16px rgba(255, 107, 53, 0.3));
|
|
624
595
|
}
|
|
625
596
|
|
|
626
597
|
.panel-score-pop .score-of {
|
|
627
|
-
font-size:
|
|
598
|
+
font-size: 1rem;
|
|
628
599
|
font-weight: 700;
|
|
629
600
|
color: var(--text-muted);
|
|
630
601
|
}
|
|
@@ -632,32 +603,32 @@ body.dashboard-page {
|
|
|
632
603
|
.panel-score-pop .score-label {
|
|
633
604
|
display: inline-block;
|
|
634
605
|
background: linear-gradient(135deg, var(--accent-orange), var(--accent-red));
|
|
635
|
-
padding: 0.
|
|
606
|
+
padding: 0.25rem 0.65rem;
|
|
636
607
|
border-radius: 50px;
|
|
637
608
|
font-family: "Syne", sans-serif;
|
|
638
|
-
font-size:
|
|
609
|
+
font-size: 0.7rem;
|
|
639
610
|
font-weight: 700;
|
|
640
|
-
letter-spacing:
|
|
611
|
+
letter-spacing: 0.5px;
|
|
641
612
|
text-transform: uppercase;
|
|
642
|
-
box-shadow: 0
|
|
643
|
-
margin-bottom: 0.
|
|
613
|
+
box-shadow: 0 4px 12px rgba(255, 107, 53, 0.3);
|
|
614
|
+
margin-bottom: 0.2rem;
|
|
644
615
|
-webkit-text-fill-color: initial;
|
|
645
616
|
color: #fff;
|
|
646
617
|
}
|
|
647
618
|
|
|
648
619
|
.panel-score-pop .score-desc {
|
|
649
|
-
font-size:
|
|
620
|
+
font-size: 0.75rem;
|
|
650
621
|
color: var(--text-muted);
|
|
651
622
|
font-style: italic;
|
|
652
|
-
margin-bottom: 0.
|
|
623
|
+
margin-bottom: 0.25rem;
|
|
653
624
|
}
|
|
654
625
|
|
|
655
626
|
.panel-score-pop .score-stats {
|
|
656
627
|
display: flex;
|
|
657
628
|
justify-content: center;
|
|
658
|
-
gap:
|
|
629
|
+
gap: 0.5rem;
|
|
659
630
|
flex-wrap: wrap;
|
|
660
|
-
font-size: 0.
|
|
631
|
+
font-size: 0.65rem;
|
|
661
632
|
color: var(--text-dim);
|
|
662
633
|
}
|
|
663
634
|
|
|
@@ -705,26 +676,26 @@ body.dashboard-page {
|
|
|
705
676
|
.priority-inline {
|
|
706
677
|
display: grid;
|
|
707
678
|
grid-template-columns: 1fr 1fr;
|
|
708
|
-
gap:
|
|
709
|
-
margin-top:
|
|
710
|
-
padding-top:
|
|
679
|
+
gap: 0.5rem;
|
|
680
|
+
margin-top: 0.5rem;
|
|
681
|
+
padding-top: 0.5rem;
|
|
711
682
|
border-top: 1px solid var(--border-subtle);
|
|
712
683
|
}
|
|
713
684
|
|
|
714
685
|
.priority-inline-col {
|
|
715
686
|
background: rgba(255, 255, 255, 0.02);
|
|
716
|
-
border-radius:
|
|
717
|
-
padding:
|
|
687
|
+
border-radius: 10px;
|
|
688
|
+
padding: 0.5rem 0.65rem;
|
|
718
689
|
border: 1px solid rgba(255, 255, 255, 0.05);
|
|
719
690
|
}
|
|
720
691
|
|
|
721
692
|
.priority-inline h4 {
|
|
722
|
-
margin: 0 0 0.
|
|
693
|
+
margin: 0 0 0.25rem;
|
|
723
694
|
font-family: "Syne", sans-serif;
|
|
724
|
-
font-size: 0.
|
|
695
|
+
font-size: 0.65rem;
|
|
725
696
|
font-weight: 700;
|
|
726
697
|
text-transform: uppercase;
|
|
727
|
-
letter-spacing:
|
|
698
|
+
letter-spacing: 1px;
|
|
728
699
|
color: var(--accent-orange);
|
|
729
700
|
}
|
|
730
701
|
|
|
@@ -735,11 +706,11 @@ body.dashboard-page {
|
|
|
735
706
|
}
|
|
736
707
|
|
|
737
708
|
.priority-inline .priority-list li {
|
|
738
|
-
padding: 0.
|
|
739
|
-
padding-left:
|
|
709
|
+
padding: 0.2rem 0;
|
|
710
|
+
padding-left: 0.85rem;
|
|
740
711
|
position: relative;
|
|
741
712
|
color: var(--text-muted);
|
|
742
|
-
font-size: 0.
|
|
713
|
+
font-size: 0.7rem;
|
|
743
714
|
border-bottom: none;
|
|
744
715
|
}
|
|
745
716
|
|
|
@@ -790,8 +761,8 @@ body.dashboard-page {
|
|
|
790
761
|
}
|
|
791
762
|
|
|
792
763
|
.panel-body-heatmap {
|
|
793
|
-
padding:
|
|
794
|
-
padding-top: 0.
|
|
764
|
+
padding: 0.4rem 0.65rem;
|
|
765
|
+
padding-top: 0.25rem;
|
|
795
766
|
}
|
|
796
767
|
|
|
797
768
|
.panel-body-heatmap #treemap {
|
|
@@ -815,13 +786,13 @@ body.dashboard-page {
|
|
|
815
786
|
margin: 0;
|
|
816
787
|
}
|
|
817
788
|
|
|
818
|
-
/* ——— Treemap: file-item style (reference) ——— */
|
|
789
|
+
/* ——— Treemap: file-item style (reference), keep hover animation ——— */
|
|
819
790
|
#treemap {
|
|
820
791
|
display: grid;
|
|
821
|
-
grid-template-columns: repeat(auto-fill, minmax(
|
|
822
|
-
gap: 0.
|
|
823
|
-
min-height:
|
|
824
|
-
padding: 0.
|
|
792
|
+
grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
|
|
793
|
+
gap: 0.4rem;
|
|
794
|
+
min-height: 80px;
|
|
795
|
+
padding: 0.15rem 0;
|
|
825
796
|
}
|
|
826
797
|
|
|
827
798
|
.treemap-cell {
|
|
@@ -833,9 +804,9 @@ body.dashboard-page {
|
|
|
833
804
|
justify-content: center;
|
|
834
805
|
gap: 0;
|
|
835
806
|
cursor: pointer;
|
|
836
|
-
padding: 0.
|
|
837
|
-
border:
|
|
838
|
-
border-radius:
|
|
807
|
+
padding: 0.35rem;
|
|
808
|
+
border: 1px solid transparent;
|
|
809
|
+
border-radius: 10px;
|
|
839
810
|
transition: transform 0.3s ease, border-color 0.3s ease;
|
|
840
811
|
}
|
|
841
812
|
|
|
@@ -844,8 +815,8 @@ body.dashboard-page {
|
|
|
844
815
|
}
|
|
845
816
|
|
|
846
817
|
.treemap-cell-name {
|
|
847
|
-
font-size: 0.
|
|
848
|
-
line-height: 1.
|
|
818
|
+
font-size: 0.6rem;
|
|
819
|
+
line-height: 1.25;
|
|
849
820
|
color: inherit;
|
|
850
821
|
text-align: center;
|
|
851
822
|
max-width: 100%;
|
|
@@ -911,38 +882,38 @@ body.dashboard-page {
|
|
|
911
882
|
margin: 0;
|
|
912
883
|
display: flex;
|
|
913
884
|
flex-direction: column;
|
|
914
|
-
gap:
|
|
885
|
+
gap: 0.4rem;
|
|
915
886
|
}
|
|
916
887
|
|
|
917
888
|
.debt-list li {
|
|
918
889
|
border-bottom: none;
|
|
919
|
-
padding:
|
|
890
|
+
padding: 0.5rem 0.65rem;
|
|
920
891
|
cursor: pointer;
|
|
921
892
|
transition: background 0.3s ease, border-left-width 0.3s ease;
|
|
922
893
|
background: rgba(255, 255, 255, 0.02);
|
|
923
|
-
border-radius:
|
|
924
|
-
border-left:
|
|
894
|
+
border-radius: 10px;
|
|
895
|
+
border-left: 3px solid var(--accent-orange);
|
|
925
896
|
}
|
|
926
897
|
|
|
927
898
|
.debt-list li:last-child { border-bottom: none; }
|
|
928
899
|
.debt-list li:hover {
|
|
929
900
|
background: rgba(255, 255, 255, 0.04);
|
|
930
|
-
border-left-width:
|
|
901
|
+
border-left-width: 4px;
|
|
931
902
|
}
|
|
932
903
|
|
|
933
904
|
.debt-list .title {
|
|
934
905
|
font-family: "Syne", sans-serif;
|
|
935
|
-
font-size:
|
|
906
|
+
font-size: 0.8rem;
|
|
936
907
|
font-weight: 700;
|
|
937
908
|
color: var(--text);
|
|
938
|
-
margin-bottom: 0.
|
|
909
|
+
margin-bottom: 0.15rem;
|
|
939
910
|
}
|
|
940
|
-
.debt-list .meta { font-size: 0.
|
|
911
|
+
.debt-list .meta { font-size: 0.65rem; color: var(--text-dim); display: block; margin-top: 0.1rem; font-family: "Space Mono", ui-monospace, monospace; }
|
|
941
912
|
.debt-list-explanation {
|
|
942
|
-
font-size: 0.
|
|
913
|
+
font-size: 0.7rem;
|
|
943
914
|
color: var(--text-muted);
|
|
944
|
-
margin: 0.
|
|
945
|
-
line-height: 1.
|
|
915
|
+
margin: 0.25rem 0 0;
|
|
916
|
+
line-height: 1.4;
|
|
946
917
|
display: -webkit-box;
|
|
947
918
|
-webkit-line-clamp: 2;
|
|
948
919
|
line-clamp: 2;
|
|
@@ -1091,11 +1062,12 @@ body.dashboard-page {
|
|
|
1091
1062
|
|
|
1092
1063
|
/* ——— LLM output / description ——— */
|
|
1093
1064
|
.llm-output .llm-prose {
|
|
1094
|
-
margin: 0 0
|
|
1095
|
-
line-height: 1.
|
|
1065
|
+
margin: 0 0 0.5rem;
|
|
1066
|
+
line-height: 1.5;
|
|
1096
1067
|
white-space: pre-wrap;
|
|
1097
1068
|
word-break: break-word;
|
|
1098
1069
|
color: var(--text-muted);
|
|
1070
|
+
font-size: 0.8rem;
|
|
1099
1071
|
}
|
|
1100
1072
|
|
|
1101
1073
|
.llm-output .llm-prose:last-child { margin-bottom: 0; }
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tech-debt-visualizer",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.16",
|
|
4
4
|
"description": "Language-agnostic CLI that analyzes repos and generates interactive technical debt visualizations with AI-powered insights",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|