@urmzd/github-insights 2.1.0 → 2.3.0
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/.githooks/.sr-hooks-hash +1 -0
- package/.githooks/commit-msg +3 -0
- package/.githooks/pre-commit +3 -0
- package/AGENTS.md +32 -19
- package/CHANGELOG.md +62 -0
- package/CONTRIBUTING.md +18 -19
- package/README.md +21 -24
- package/action.yml +1 -1
- package/assets/insights/index.svg +45 -4
- package/assets/insights/metrics-constellation.svg +55 -0
- package/assets/insights/metrics-growth.svg +55 -0
- package/assets/insights/metrics-heatmap.svg +55 -0
- package/assets/insights/metrics-impact.svg +55 -0
- package/assets/insights/metrics-rhythm.svg +55 -0
- package/assets/insights/metrics-velocity.svg +55 -0
- package/examples/classic/README.md +36 -2
- package/examples/classic/index.svg +45 -4
- package/examples/classic/metrics-constellation.svg +55 -0
- package/examples/classic/metrics-growth.svg +55 -0
- package/examples/classic/metrics-heatmap.svg +55 -0
- package/examples/classic/metrics-impact.svg +55 -0
- package/examples/classic/metrics-rhythm.svg +55 -0
- package/examples/classic/metrics-velocity.svg +55 -0
- package/examples/ecosystem/README.md +39 -28
- package/examples/ecosystem/index.svg +45 -4
- package/examples/ecosystem/metrics-constellation.svg +55 -0
- package/examples/ecosystem/metrics-growth.svg +55 -0
- package/examples/ecosystem/metrics-heatmap.svg +55 -0
- package/examples/ecosystem/metrics-impact.svg +55 -0
- package/examples/ecosystem/metrics-rhythm.svg +55 -0
- package/examples/ecosystem/metrics-velocity.svg +55 -0
- package/examples/minimal/README.md +36 -2
- package/examples/minimal/index.svg +45 -4
- package/examples/minimal/metrics-constellation.svg +55 -0
- package/examples/minimal/metrics-growth.svg +55 -0
- package/examples/minimal/metrics-heatmap.svg +55 -0
- package/examples/minimal/metrics-impact.svg +55 -0
- package/examples/minimal/metrics-rhythm.svg +55 -0
- package/examples/minimal/metrics-velocity.svg +55 -0
- package/examples/modern/README.md +62 -50
- package/examples/modern/index.svg +45 -4
- package/examples/modern/metrics-constellation.svg +55 -0
- package/examples/modern/metrics-growth.svg +55 -0
- package/examples/modern/metrics-heatmap.svg +55 -0
- package/examples/modern/metrics-impact.svg +55 -0
- package/examples/modern/metrics-rhythm.svg +55 -0
- package/examples/modern/metrics-velocity.svg +55 -0
- package/llms.txt +4 -4
- package/package.json +1 -1
- package/skills/github-insights/SKILL.md +35 -81
- package/sr.yaml +9 -0
- package/src/api.ts +2 -140
- package/src/components/contribution-heatmap.tsx +43 -0
- package/src/components/contribution-rhythm.tsx +152 -0
- package/src/components/full-svg.test.tsx +4 -1
- package/src/components/full-svg.tsx +14 -7
- package/src/components/growth-arc.tsx +119 -0
- package/src/components/impact-trail.tsx +90 -0
- package/src/components/language-velocity.tsx +181 -0
- package/src/components/project-constellation.tsx +97 -0
- package/src/components/section.test.tsx +5 -3
- package/src/components/section.tsx +5 -13
- package/src/components/style-defs.tsx +44 -3
- package/src/index.ts +28 -47
- package/src/metrics.test.ts +50 -57
- package/src/metrics.ts +277 -95
- package/src/readme.test.ts +2 -4
- package/src/templates.test.ts +19 -16
- package/src/templates.ts +30 -16
- package/src/theme.ts +11 -1
- package/src/types.ts +34 -7
- package/assets/insights/metrics-calendar.svg +0 -14
- package/assets/insights/metrics-complexity.svg +0 -14
- package/assets/insights/metrics-contributions.svg +0 -14
- package/assets/insights/metrics-expertise.svg +0 -14
- package/assets/insights/metrics-languages.svg +0 -14
- package/assets/insights/metrics-pulse.svg +0 -14
- package/examples/classic/metrics-calendar.svg +0 -14
- package/examples/classic/metrics-complexity.svg +0 -14
- package/examples/classic/metrics-contributions.svg +0 -14
- package/examples/classic/metrics-expertise.svg +0 -14
- package/examples/classic/metrics-languages.svg +0 -14
- package/examples/classic/metrics-pulse.svg +0 -14
- package/examples/ecosystem/metrics-calendar.svg +0 -14
- package/examples/ecosystem/metrics-complexity.svg +0 -14
- package/examples/ecosystem/metrics-contributions.svg +0 -14
- package/examples/ecosystem/metrics-expertise.svg +0 -14
- package/examples/ecosystem/metrics-languages.svg +0 -14
- package/examples/ecosystem/metrics-pulse.svg +0 -14
- package/examples/minimal/metrics-calendar.svg +0 -14
- package/examples/minimal/metrics-complexity.svg +0 -14
- package/examples/minimal/metrics-contributions.svg +0 -14
- package/examples/minimal/metrics-expertise.svg +0 -14
- package/examples/minimal/metrics-languages.svg +0 -14
- package/examples/minimal/metrics-pulse.svg +0 -14
- package/examples/modern/metrics-calendar.svg +0 -14
- package/examples/modern/metrics-complexity.svg +0 -14
- package/examples/modern/metrics-contributions.svg +0 -14
- package/examples/modern/metrics-expertise.svg +0 -14
- package/examples/modern/metrics-languages.svg +0 -14
- package/examples/modern/metrics-pulse.svg +0 -14
- package/src/components/bar-chart.test.tsx +0 -38
- package/src/components/bar-chart.tsx +0 -54
- package/src/components/contribution-calendar.test.tsx +0 -44
- package/src/components/contribution-calendar.tsx +0 -94
- package/src/components/contribution-cards.test.tsx +0 -36
- package/src/components/contribution-cards.tsx +0 -58
- package/src/components/donut-chart.test.tsx +0 -36
- package/src/components/donut-chart.tsx +0 -102
- package/src/components/project-cards.test.tsx +0 -46
- package/src/components/project-cards.tsx +0 -66
- package/src/components/stat-cards.test.tsx +0 -32
- package/src/components/stat-cards.tsx +0 -57
- package/src/components/tech-highlights.test.tsx +0 -63
- package/src/components/tech-highlights.tsx +0 -109
- package/teasr.toml +0 -14
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="808" height="185" viewBox="0 0 808 185"><defs><style>
|
|
2
|
+
.t { font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif; font-variant-numeric: tabular-lining; }
|
|
3
|
+
.t-h { font-size: 14px; fill: #c9d1d9; letter-spacing: 2px; font-weight: 600; }
|
|
4
|
+
.t-sub { font-size: 11px; fill: #6e7681; }
|
|
5
|
+
.t-label { font-size: 12px; fill: #8b949e; }
|
|
6
|
+
.t-value { font-size: 11px; fill: #6e7681; }
|
|
7
|
+
.t-subhdr { font-size: 11px; fill: #8b949e; letter-spacing: 1px; font-weight: 600; }
|
|
8
|
+
.t-stat-label { font-size: 10px; fill: #8b949e; font-weight: 600; }
|
|
9
|
+
.t-stat-value { font-size: 22px; font-weight: 700; }
|
|
10
|
+
.t-card-title { font-size: 12px; fill: #58a6ff; font-weight: 700; }
|
|
11
|
+
.t-card-detail { font-size: 11px; fill: #8b949e; }
|
|
12
|
+
.t-pill { font-size: 11px; font-weight: 600; }
|
|
13
|
+
.t-bullet { font-size: 12px; fill: #c9d1d9; }
|
|
14
|
+
.bg-fill { fill: #0d1117; }
|
|
15
|
+
.card-fill { fill: #161b22; }
|
|
16
|
+
.border-stroke { stroke: #30363d; }
|
|
17
|
+
|
|
18
|
+
@media (prefers-color-scheme: light) {
|
|
19
|
+
.bg-fill { fill: #ffffff; }
|
|
20
|
+
.card-fill { fill: #f6f8fa; }
|
|
21
|
+
.border-stroke { stroke: #d0d7de; }
|
|
22
|
+
.t-h { fill: #1f2328; }
|
|
23
|
+
.t-sub { fill: #656d76; }
|
|
24
|
+
.t-label { fill: #656d76; }
|
|
25
|
+
.t-value { fill: #656d76; }
|
|
26
|
+
.t-subhdr { fill: #656d76; }
|
|
27
|
+
.t-stat-label { fill: #656d76; }
|
|
28
|
+
.t-card-title { fill: #0969da; }
|
|
29
|
+
.t-card-detail { fill: #656d76; }
|
|
30
|
+
.t-bullet { fill: #1f2328; }
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@keyframes fadeIn {
|
|
34
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
35
|
+
to { opacity: 1; transform: translateY(0); }
|
|
36
|
+
}
|
|
37
|
+
@keyframes scaleIn {
|
|
38
|
+
from { transform: scale(0); opacity: 0; }
|
|
39
|
+
to { transform: scale(1); opacity: 1; }
|
|
40
|
+
}
|
|
41
|
+
@keyframes drawPath {
|
|
42
|
+
from { stroke-dashoffset: var(--path-length); }
|
|
43
|
+
to { stroke-dashoffset: 0; }
|
|
44
|
+
}
|
|
45
|
+
@keyframes radarReveal {
|
|
46
|
+
from { transform: scale(0); opacity: 0; }
|
|
47
|
+
to { transform: scale(1); opacity: 0.6; }
|
|
48
|
+
}
|
|
49
|
+
.fade-1 { animation: fadeIn 0.6s ease-out 0.1s both; }
|
|
50
|
+
.fade-2 { animation: fadeIn 0.6s ease-out 0.25s both; }
|
|
51
|
+
.fade-3 { animation: fadeIn 0.6s ease-out 0.4s both; }
|
|
52
|
+
.fade-4 { animation: fadeIn 0.6s ease-out 0.55s both; }
|
|
53
|
+
.fade-5 { animation: fadeIn 0.6s ease-out 0.7s both; }
|
|
54
|
+
.fade-6 { animation: fadeIn 0.6s ease-out 0.85s both; }
|
|
55
|
+
</style></defs><rect width="808" height="185" rx="12" class="bg-fill" fill="#0d1117"/><text x="24" y="40" class="t t-h">CONTRIBUTION ACTIVITY</text><text x="24" y="56" class="t t-sub">Contribution patterns over the past year</text><rect x="24" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="24" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="24" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="24" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="24" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="24" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="24" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="37" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="37" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="37" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="37" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="37" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="37" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="37" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="50" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="50" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="50" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="50" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="50" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="50" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="50" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="63" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="63" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="63" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="63" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="63" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="63" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="63" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="76" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="76" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="76" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="76" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="76" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="76" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="76" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="89" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="89" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="89" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="89" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="89" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="89" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="89" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="102" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="102" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="102" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="102" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="102" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="102" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="102" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="115" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="115" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="115" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="115" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="115" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="115" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="115" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="128" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="128" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="128" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="128" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="128" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="128" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="128" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="141" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="141" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="141" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="141" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="141" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="141" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="141" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="154" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="154" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="154" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="154" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="154" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="154" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="154" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="167" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="167" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="167" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="167" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="167" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="167" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="167" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="180" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="180" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="180" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="180" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="180" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="180" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="180" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="193" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="193" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="193" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="193" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="193" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="193" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="193" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="206" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="206" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="206" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="206" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="206" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="206" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="206" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="219" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="219" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="219" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="219" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="219" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="219" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="219" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="232" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="232" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="232" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="232" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="232" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="232" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="232" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="245" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="245" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="245" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="245" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="245" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="245" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="245" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="258" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="258" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="258" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="258" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="258" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="258" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="258" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="271" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="271" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="271" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="271" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="271" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="271" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="271" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="284" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="284" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="284" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="284" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="284" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="284" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="284" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="297" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="297" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="297" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="297" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="297" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="297" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="297" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="310" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="310" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="310" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="310" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="310" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="310" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="310" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="323" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="323" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="323" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="323" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="323" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="323" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="323" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="336" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="336" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="336" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="336" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="336" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="336" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="336" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="349" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="349" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="349" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="349" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="349" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="349" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="349" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="362" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="362" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="362" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="362" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="362" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="362" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="362" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="375" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="375" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="375" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="375" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="375" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="375" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="375" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="388" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="388" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="388" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="388" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="388" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="388" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="388" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="401" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="401" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="401" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="401" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="401" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="401" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="401" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="414" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="414" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="414" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="414" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="414" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="414" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="414" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="427" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="427" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="427" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="427" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="427" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="427" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="427" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="440" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="440" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="440" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="440" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="440" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="440" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="440" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="453" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="453" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="453" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="453" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="453" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="453" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="453" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="466" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="466" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="466" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="466" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="466" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="466" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="466" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="479" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="479" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="479" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="479" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="479" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="479" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="479" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="492" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="492" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="492" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="492" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="492" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="492" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="492" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="505" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="505" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="505" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="505" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="505" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="505" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="505" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="518" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="518" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="518" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="518" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="518" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="518" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="518" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="531" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="531" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="531" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="531" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="531" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="531" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="531" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-4"/><rect x="544" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="544" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="544" y="92" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="544" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="544" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="544" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="544" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-5"/><rect x="557" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="557" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="557" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="557" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="557" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="557" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="557" y="144" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="570" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="570" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="570" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="570" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="570" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="570" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-1"/><rect x="570" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="583" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="583" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="583" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="583" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="583" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="583" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="583" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="596" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="596" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="596" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="596" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="596" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="596" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="596" y="144" width="11" height="11" rx="2" fill="#216e39" opacity="0.85" class="fade-3"/><rect x="609" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="609" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="609" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="609" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="609" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="609" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="609" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="622" y="66" width="11" height="11" rx="2" fill="#216e39" opacity="0.85" class="fade-5"/><rect x="622" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-5"/><rect x="622" y="92" width="11" height="11" rx="2" fill="#40c463" opacity="0.85" class="fade-5"/><rect x="622" y="105" width="11" height="11" rx="2" fill="#30a14e" opacity="0.85" class="fade-5"/><rect x="622" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-5"/><rect x="622" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-5"/><rect x="622" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-5"/><rect x="635" y="66" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="635" y="79" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="635" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="635" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="635" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="635" y="131" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-6"/><rect x="635" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-6"/><rect x="648" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="648" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="648" y="92" width="11" height="11" rx="2" fill="#40c463" opacity="0.85" class="fade-1"/><rect x="648" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="648" y="118" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="648" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="648" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-1"/><rect x="661" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="661" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="661" y="92" width="11" height="11" rx="2" fill="#40c463" opacity="0.85" class="fade-2"/><rect x="661" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="661" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-2"/><rect x="661" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="661" y="144" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-2"/><rect x="674" y="66" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="674" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="674" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="674" y="105" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="674" y="118" width="11" height="11" rx="2" fill="#ebedf0" opacity="0.85" class="fade-3"/><rect x="674" y="131" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-3"/><rect x="674" y="144" width="11" height="11" rx="2" fill="#30a14e" opacity="0.85" class="fade-3"/><rect x="687" y="66" width="11" height="11" rx="2" fill="#30a14e" opacity="0.85" class="fade-4"/><rect x="687" y="79" width="11" height="11" rx="2" fill="#40c463" opacity="0.85" class="fade-4"/><rect x="687" y="92" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="687" y="105" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-4"/><rect x="687" y="118" width="11" height="11" rx="2" fill="#40c463" opacity="0.85" class="fade-4"/><rect x="687" y="131" width="11" height="11" rx="2" fill="#40c463" opacity="0.85" class="fade-4"/><rect x="687" y="144" width="11" height="11" rx="2" fill="#216e39" opacity="0.85" class="fade-4"/><rect x="700" y="66" width="11" height="11" rx="2" fill="#30a14e" opacity="0.85" class="fade-5"/><rect x="700" y="79" width="11" height="11" rx="2" fill="#9be9a8" opacity="0.85" class="fade-5"/></svg>
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="808" height="210" viewBox="0 0 808 210"><defs><style>
|
|
2
|
+
.t { font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif; font-variant-numeric: tabular-lining; }
|
|
3
|
+
.t-h { font-size: 14px; fill: #c9d1d9; letter-spacing: 2px; font-weight: 600; }
|
|
4
|
+
.t-sub { font-size: 11px; fill: #6e7681; }
|
|
5
|
+
.t-label { font-size: 12px; fill: #8b949e; }
|
|
6
|
+
.t-value { font-size: 11px; fill: #6e7681; }
|
|
7
|
+
.t-subhdr { font-size: 11px; fill: #8b949e; letter-spacing: 1px; font-weight: 600; }
|
|
8
|
+
.t-stat-label { font-size: 10px; fill: #8b949e; font-weight: 600; }
|
|
9
|
+
.t-stat-value { font-size: 22px; font-weight: 700; }
|
|
10
|
+
.t-card-title { font-size: 12px; fill: #58a6ff; font-weight: 700; }
|
|
11
|
+
.t-card-detail { font-size: 11px; fill: #8b949e; }
|
|
12
|
+
.t-pill { font-size: 11px; font-weight: 600; }
|
|
13
|
+
.t-bullet { font-size: 12px; fill: #c9d1d9; }
|
|
14
|
+
.bg-fill { fill: #0d1117; }
|
|
15
|
+
.card-fill { fill: #161b22; }
|
|
16
|
+
.border-stroke { stroke: #30363d; }
|
|
17
|
+
|
|
18
|
+
@media (prefers-color-scheme: light) {
|
|
19
|
+
.bg-fill { fill: #ffffff; }
|
|
20
|
+
.card-fill { fill: #f6f8fa; }
|
|
21
|
+
.border-stroke { stroke: #d0d7de; }
|
|
22
|
+
.t-h { fill: #1f2328; }
|
|
23
|
+
.t-sub { fill: #656d76; }
|
|
24
|
+
.t-label { fill: #656d76; }
|
|
25
|
+
.t-value { fill: #656d76; }
|
|
26
|
+
.t-subhdr { fill: #656d76; }
|
|
27
|
+
.t-stat-label { fill: #656d76; }
|
|
28
|
+
.t-card-title { fill: #0969da; }
|
|
29
|
+
.t-card-detail { fill: #656d76; }
|
|
30
|
+
.t-bullet { fill: #1f2328; }
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@keyframes fadeIn {
|
|
34
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
35
|
+
to { opacity: 1; transform: translateY(0); }
|
|
36
|
+
}
|
|
37
|
+
@keyframes scaleIn {
|
|
38
|
+
from { transform: scale(0); opacity: 0; }
|
|
39
|
+
to { transform: scale(1); opacity: 1; }
|
|
40
|
+
}
|
|
41
|
+
@keyframes drawPath {
|
|
42
|
+
from { stroke-dashoffset: var(--path-length); }
|
|
43
|
+
to { stroke-dashoffset: 0; }
|
|
44
|
+
}
|
|
45
|
+
@keyframes radarReveal {
|
|
46
|
+
from { transform: scale(0); opacity: 0; }
|
|
47
|
+
to { transform: scale(1); opacity: 0.6; }
|
|
48
|
+
}
|
|
49
|
+
.fade-1 { animation: fadeIn 0.6s ease-out 0.1s both; }
|
|
50
|
+
.fade-2 { animation: fadeIn 0.6s ease-out 0.25s both; }
|
|
51
|
+
.fade-3 { animation: fadeIn 0.6s ease-out 0.4s both; }
|
|
52
|
+
.fade-4 { animation: fadeIn 0.6s ease-out 0.55s both; }
|
|
53
|
+
.fade-5 { animation: fadeIn 0.6s ease-out 0.7s both; }
|
|
54
|
+
.fade-6 { animation: fadeIn 0.6s ease-out 0.85s both; }
|
|
55
|
+
</style></defs><rect width="808" height="210" rx="12" class="bg-fill" fill="#0d1117"/><text x="24" y="40" class="t t-h">OPEN SOURCE IMPACT</text><text x="24" y="56" class="t t-sub">External repositories contributed to</text><text x="24" y="88" class="t t-card-title fade-1">getzep/graphiti</text><rect x="304" y="78" width="400" height="12" rx="3" fill="#58a6ff" fill-opacity="0.7" class="fade-1"/><text x="720" y="88" class="t t-value fade-1">★ 24,055</text><text x="784" y="88" class="t t-value fade-1">Python</text><text x="24" y="130" class="t t-card-title fade-2">googleapis/python-aiplatform</text><rect x="304" y="120" width="268.55616835256285" height="12" rx="3" fill="#3fb950" fill-opacity="0.7" class="fade-2"/><text x="720" y="130" class="t t-value fade-2">★ 873</text><text x="784" y="130" class="t t-value fade-2">Python</text><text x="24" y="172" class="t t-card-title fade-3">MathisWellmann/gym-rs</text><rect x="304" y="162" width="192.3855297941612" height="12" rx="3" fill="#d29922" fill-opacity="0.7" class="fade-3"/><text x="720" y="172" class="t t-value fade-3">★ 127</text><text x="784" y="172" class="t t-value fade-3">Rust</text></svg>
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="808" height="340" viewBox="0 0 808 340"><defs><style>
|
|
2
|
+
.t { font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif; font-variant-numeric: tabular-lining; }
|
|
3
|
+
.t-h { font-size: 14px; fill: #c9d1d9; letter-spacing: 2px; font-weight: 600; }
|
|
4
|
+
.t-sub { font-size: 11px; fill: #6e7681; }
|
|
5
|
+
.t-label { font-size: 12px; fill: #8b949e; }
|
|
6
|
+
.t-value { font-size: 11px; fill: #6e7681; }
|
|
7
|
+
.t-subhdr { font-size: 11px; fill: #8b949e; letter-spacing: 1px; font-weight: 600; }
|
|
8
|
+
.t-stat-label { font-size: 10px; fill: #8b949e; font-weight: 600; }
|
|
9
|
+
.t-stat-value { font-size: 22px; font-weight: 700; }
|
|
10
|
+
.t-card-title { font-size: 12px; fill: #58a6ff; font-weight: 700; }
|
|
11
|
+
.t-card-detail { font-size: 11px; fill: #8b949e; }
|
|
12
|
+
.t-pill { font-size: 11px; font-weight: 600; }
|
|
13
|
+
.t-bullet { font-size: 12px; fill: #c9d1d9; }
|
|
14
|
+
.bg-fill { fill: #0d1117; }
|
|
15
|
+
.card-fill { fill: #161b22; }
|
|
16
|
+
.border-stroke { stroke: #30363d; }
|
|
17
|
+
|
|
18
|
+
@media (prefers-color-scheme: light) {
|
|
19
|
+
.bg-fill { fill: #ffffff; }
|
|
20
|
+
.card-fill { fill: #f6f8fa; }
|
|
21
|
+
.border-stroke { stroke: #d0d7de; }
|
|
22
|
+
.t-h { fill: #1f2328; }
|
|
23
|
+
.t-sub { fill: #656d76; }
|
|
24
|
+
.t-label { fill: #656d76; }
|
|
25
|
+
.t-value { fill: #656d76; }
|
|
26
|
+
.t-subhdr { fill: #656d76; }
|
|
27
|
+
.t-stat-label { fill: #656d76; }
|
|
28
|
+
.t-card-title { fill: #0969da; }
|
|
29
|
+
.t-card-detail { fill: #656d76; }
|
|
30
|
+
.t-bullet { fill: #1f2328; }
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@keyframes fadeIn {
|
|
34
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
35
|
+
to { opacity: 1; transform: translateY(0); }
|
|
36
|
+
}
|
|
37
|
+
@keyframes scaleIn {
|
|
38
|
+
from { transform: scale(0); opacity: 0; }
|
|
39
|
+
to { transform: scale(1); opacity: 1; }
|
|
40
|
+
}
|
|
41
|
+
@keyframes drawPath {
|
|
42
|
+
from { stroke-dashoffset: var(--path-length); }
|
|
43
|
+
to { stroke-dashoffset: 0; }
|
|
44
|
+
}
|
|
45
|
+
@keyframes radarReveal {
|
|
46
|
+
from { transform: scale(0); opacity: 0; }
|
|
47
|
+
to { transform: scale(1); opacity: 0.6; }
|
|
48
|
+
}
|
|
49
|
+
.fade-1 { animation: fadeIn 0.6s ease-out 0.1s both; }
|
|
50
|
+
.fade-2 { animation: fadeIn 0.6s ease-out 0.25s both; }
|
|
51
|
+
.fade-3 { animation: fadeIn 0.6s ease-out 0.4s both; }
|
|
52
|
+
.fade-4 { animation: fadeIn 0.6s ease-out 0.55s both; }
|
|
53
|
+
.fade-5 { animation: fadeIn 0.6s ease-out 0.7s both; }
|
|
54
|
+
.fade-6 { animation: fadeIn 0.6s ease-out 0.85s both; }
|
|
55
|
+
</style></defs><rect width="808" height="340" rx="12" class="bg-fill" fill="#0d1117"/><text x="24" y="40" class="t t-h">CONTRIBUTION RHYTHM</text><text x="24" y="56" class="t t-sub">Activity patterns and statistics over the past year</text><circle cx="144" cy="186" r="22.5" fill="none" stroke="#30363d" stroke-width="1" stroke-opacity="0.4"/><circle cx="144" cy="186" r="45" fill="none" stroke="#30363d" stroke-width="1" stroke-opacity="0.4"/><circle cx="144" cy="186" r="67.5" fill="none" stroke="#30363d" stroke-width="1" stroke-opacity="0.4"/><circle cx="144" cy="186" r="90" fill="none" stroke="#30363d" stroke-width="1" stroke-opacity="0.4"/><line x1="144" y1="186" x2="144" y2="96" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><line x1="144" y1="186" x2="214.36483342212267" y2="129.88591783271397" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><line x1="144" y1="186" x2="231.74351209636413" y2="206.0268840560683" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><line x1="144" y1="186" x2="183.04953652058023" y2="267.08719811121773" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><line x1="144" y1="186" x2="104.95046347941977" y2="267.08719811121773" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><line x1="144" y1="186" x2="56.25648790363587" y2="206.0268840560683" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><line x1="144" y1="186" x2="73.63516657787731" y2="129.885917832714" stroke="#30363d" stroke-width="1" stroke-opacity="0.3"/><polygon points="144,160.02272727272728 176.46377541975204,160.11100300009304 172.11780728542578,192.41770602705824 154.91612043643494,208.66755765381768 132.551385883739,209.7732921735161 56.25648790363587,206.0268840560683 96.18389728814844,147.86793052723064" fill="#58a6ff" fill-opacity="0.2" stroke="#58a6ff" stroke-width="2" stroke-opacity="0.8" class="fade-2" style="transform-origin: 144px 186px"/><circle cx="144" cy="160.02272727272728" r="3" fill="#58a6ff" class="fade-1"/><circle cx="176.46377541975204" cy="160.11100300009304" r="3" fill="#58a6ff" class="fade-2"/><circle cx="172.11780728542578" cy="192.41770602705824" r="3" fill="#58a6ff" class="fade-3"/><circle cx="154.91612043643494" cy="208.66755765381768" r="3" fill="#58a6ff" class="fade-4"/><circle cx="132.551385883739" cy="209.7732921735161" r="3" fill="#58a6ff" class="fade-5"/><circle cx="56.25648790363587" cy="206.0268840560683" r="3" fill="#58a6ff" class="fade-6"/><circle cx="96.18389728814844" cy="147.86793052723064" r="3" fill="#58a6ff" class="fade-6"/><text x="144" y="84" class="t t-value" text-anchor="middle">Sun</text><text x="226.87413714161116" y="123.91008100297425" class="t t-value" text-anchor="middle">Mon</text><text x="247.34235869127332" y="213.58721899936933" class="t t-value" text-anchor="middle">Tue</text><text x="189.99167634646116" y="285.50269999765646" class="t t-value" text-anchor="middle">Wed</text><text x="98.00832365353884" y="285.50269999765646" class="t t-value" text-anchor="middle">Thu</text><text x="40.657641308726696" y="213.58721899936933" class="t t-value" text-anchor="middle">Fri</text><text x="61.12586285838883" y="123.91008100297427" class="t t-value" text-anchor="middle">Sat</text><text x="324" y="96" class="t t-stat-label">COMMITS</text><text x="324" y="118" fill="#58a6ff" class="t t-stat-value">1,352</text><text x="324" y="138" class="t t-stat-label">PRS</text><text x="324" y="160" fill="#3fb950" class="t t-stat-value">4</text><text x="324" y="180" class="t t-stat-label">REVIEWS</text><text x="324" y="202" fill="#d29922" class="t t-stat-value">5</text><text x="324" y="222" class="t t-stat-label">REPOS</text><text x="324" y="244" fill="#bc8cff" class="t t-stat-value">24</text><text x="324" y="264" class="t t-stat-label">STREAK</text><text x="324" y="286" fill="#39d2c0" class="t t-stat-value">15d</text><text x="324" y="316" class="t t-sub">Most active: Fridays</text></svg>
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="808" height="250" viewBox="0 0 808 250"><defs><style>
|
|
2
|
+
.t { font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif; font-variant-numeric: tabular-lining; }
|
|
3
|
+
.t-h { font-size: 14px; fill: #c9d1d9; letter-spacing: 2px; font-weight: 600; }
|
|
4
|
+
.t-sub { font-size: 11px; fill: #6e7681; }
|
|
5
|
+
.t-label { font-size: 12px; fill: #8b949e; }
|
|
6
|
+
.t-value { font-size: 11px; fill: #6e7681; }
|
|
7
|
+
.t-subhdr { font-size: 11px; fill: #8b949e; letter-spacing: 1px; font-weight: 600; }
|
|
8
|
+
.t-stat-label { font-size: 10px; fill: #8b949e; font-weight: 600; }
|
|
9
|
+
.t-stat-value { font-size: 22px; font-weight: 700; }
|
|
10
|
+
.t-card-title { font-size: 12px; fill: #58a6ff; font-weight: 700; }
|
|
11
|
+
.t-card-detail { font-size: 11px; fill: #8b949e; }
|
|
12
|
+
.t-pill { font-size: 11px; font-weight: 600; }
|
|
13
|
+
.t-bullet { font-size: 12px; fill: #c9d1d9; }
|
|
14
|
+
.bg-fill { fill: #0d1117; }
|
|
15
|
+
.card-fill { fill: #161b22; }
|
|
16
|
+
.border-stroke { stroke: #30363d; }
|
|
17
|
+
|
|
18
|
+
@media (prefers-color-scheme: light) {
|
|
19
|
+
.bg-fill { fill: #ffffff; }
|
|
20
|
+
.card-fill { fill: #f6f8fa; }
|
|
21
|
+
.border-stroke { stroke: #d0d7de; }
|
|
22
|
+
.t-h { fill: #1f2328; }
|
|
23
|
+
.t-sub { fill: #656d76; }
|
|
24
|
+
.t-label { fill: #656d76; }
|
|
25
|
+
.t-value { fill: #656d76; }
|
|
26
|
+
.t-subhdr { fill: #656d76; }
|
|
27
|
+
.t-stat-label { fill: #656d76; }
|
|
28
|
+
.t-card-title { fill: #0969da; }
|
|
29
|
+
.t-card-detail { fill: #656d76; }
|
|
30
|
+
.t-bullet { fill: #1f2328; }
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@keyframes fadeIn {
|
|
34
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
35
|
+
to { opacity: 1; transform: translateY(0); }
|
|
36
|
+
}
|
|
37
|
+
@keyframes scaleIn {
|
|
38
|
+
from { transform: scale(0); opacity: 0; }
|
|
39
|
+
to { transform: scale(1); opacity: 1; }
|
|
40
|
+
}
|
|
41
|
+
@keyframes drawPath {
|
|
42
|
+
from { stroke-dashoffset: var(--path-length); }
|
|
43
|
+
to { stroke-dashoffset: 0; }
|
|
44
|
+
}
|
|
45
|
+
@keyframes radarReveal {
|
|
46
|
+
from { transform: scale(0); opacity: 0; }
|
|
47
|
+
to { transform: scale(1); opacity: 0.6; }
|
|
48
|
+
}
|
|
49
|
+
.fade-1 { animation: fadeIn 0.6s ease-out 0.1s both; }
|
|
50
|
+
.fade-2 { animation: fadeIn 0.6s ease-out 0.25s both; }
|
|
51
|
+
.fade-3 { animation: fadeIn 0.6s ease-out 0.4s both; }
|
|
52
|
+
.fade-4 { animation: fadeIn 0.6s ease-out 0.55s both; }
|
|
53
|
+
.fade-5 { animation: fadeIn 0.6s ease-out 0.7s both; }
|
|
54
|
+
.fade-6 { animation: fadeIn 0.6s ease-out 0.85s both; }
|
|
55
|
+
</style></defs><rect width="808" height="250" rx="12" class="bg-fill" fill="#0d1117"/><text x="24" y="40" class="t t-h">LANGUAGE VELOCITY</text><text x="24" y="56" class="t t-sub">How language usage has evolved over the past year</text><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.24865831842575 150.66666666666669,205.24865831842575 C 182.33333333333334,205.24865831842575 182.33333333333334,204.4973166368515 214,204.4973166368515 C 245.66666666666669,204.4973166368515 245.66666666666669,205.49910554561717 277.33333333333337,205.49910554561717 C 309,205.49910554561717 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,195.98211091234347 404,195.98211091234347 C 435.6666666666667,195.98211091234347 435.6666666666667,203.9964221824687 467.33333333333337,203.9964221824687 C 499.00000000000006,203.9964221824687 499.00000000000006,198.23613595706618 530.6666666666667,198.23613595706618 C 562.3333333333334,198.23613595706618 562.3333333333334,204.4973166368515 594,204.4973166368515 C 625.6666666666667,204.4973166368515 625.6666666666667,157.66368515205724 657.3333333333334,157.66368515205724 C 689,157.66368515205724 689,87.28801431127013 720.6666666666667,87.28801431127013 C 752.3333333333334,87.28801431127013 752.3333333333334,66 784,66 L 784,67.25223613595705 C 752.3333333333334,67.25223613595705 752.3333333333334,88.28980322003578 720.6666666666667,88.28980322003578 C 689,88.28980322003578 689,158.16457960644007 657.3333333333334,158.16457960644007 C 625.6666666666667,158.16457960644007 625.6666666666667,204.4973166368515 594,204.4973166368515 C 562.3333333333334,204.4973166368515 562.3333333333334,198.23613595706618 530.6666666666667,198.23613595706618 C 499.00000000000006,198.23613595706618 499.00000000000006,203.9964221824687 467.33333333333337,203.9964221824687 C 435.6666666666667,203.9964221824687 435.6666666666667,195.98211091234347 404,195.98211091234347 C 372.33333333333337,195.98211091234347 372.33333333333337,206 340.6666666666667,206 C 309,206 309,205.49910554561717 277.33333333333337,205.49910554561717 C 245.66666666666669,205.49910554561717 245.66666666666669,204.4973166368515 214,204.4973166368515 C 182.33333333333334,204.4973166368515 182.33333333333334,205.24865831842575 150.66666666666669,205.24865831842575 C 119.00000000000001,205.24865831842575 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#DA5B0B" fill-opacity="0.75" class="fade-1"/><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.24865831842575 150.66666666666669,205.24865831842575 C 182.33333333333334,205.24865831842575 182.33333333333334,204.4973166368515 214,204.4973166368515 C 245.66666666666669,204.4973166368515 245.66666666666669,205.49910554561717 277.33333333333337,205.49910554561717 C 309,205.49910554561717 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,195.98211091234347 404,195.98211091234347 C 435.6666666666667,195.98211091234347 435.6666666666667,203.9964221824687 467.33333333333337,203.9964221824687 C 499.00000000000006,203.9964221824687 499.00000000000006,198.23613595706618 530.6666666666667,198.23613595706618 C 562.3333333333334,198.23613595706618 562.3333333333334,204.4973166368515 594,204.4973166368515 C 625.6666666666667,204.4973166368515 625.6666666666667,158.16457960644007 657.3333333333334,158.16457960644007 C 689,158.16457960644007 689,88.28980322003578 720.6666666666667,88.28980322003578 C 752.3333333333334,88.28980322003578 752.3333333333334,67.25223613595705 784,67.25223613595705 L 784,72.76207513416816 C 752.3333333333334,72.76207513416816 752.3333333333334,93.04830053667264 720.6666666666667,93.04830053667264 C 689,93.04830053667264 689,160.16815742397137 657.3333333333334,160.16815742397137 C 625.6666666666667,160.16815742397137 625.6666666666667,204.4973166368515 594,204.4973166368515 C 562.3333333333334,204.4973166368515 562.3333333333334,198.4865831842576 530.6666666666667,198.4865831842576 C 499.00000000000006,198.4865831842576 499.00000000000006,203.9964221824687 467.33333333333337,203.9964221824687 C 435.6666666666667,203.9964221824687 435.6666666666667,196.4830053667263 404,196.4830053667263 C 372.33333333333337,196.4830053667263 372.33333333333337,206 340.6666666666667,206 C 309,206 309,205.49910554561717 277.33333333333337,205.49910554561717 C 245.66666666666669,205.49910554561717 245.66666666666669,204.4973166368515 214,204.4973166368515 C 182.33333333333334,204.4973166368515 182.33333333333334,205.24865831842575 150.66666666666669,205.24865831842575 C 119.00000000000001,205.24865831842575 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#b07219" fill-opacity="0.75" class="fade-2"/><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.24865831842575 150.66666666666669,205.24865831842575 C 182.33333333333334,205.24865831842575 182.33333333333334,204.4973166368515 214,204.4973166368515 C 245.66666666666669,204.4973166368515 245.66666666666669,205.49910554561717 277.33333333333337,205.49910554561717 C 309,205.49910554561717 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,196.4830053667263 404,196.4830053667263 C 435.6666666666667,196.4830053667263 435.6666666666667,203.9964221824687 467.33333333333337,203.9964221824687 C 499.00000000000006,203.9964221824687 499.00000000000006,198.4865831842576 530.6666666666667,198.4865831842576 C 562.3333333333334,198.4865831842576 562.3333333333334,204.4973166368515 594,204.4973166368515 C 625.6666666666667,204.4973166368515 625.6666666666667,160.16815742397137 657.3333333333334,160.16815742397137 C 689,160.16815742397137 689,93.04830053667264 720.6666666666667,93.04830053667264 C 752.3333333333334,93.04830053667264 752.3333333333334,72.76207513416816 784,72.76207513416816 L 784,87.28801431127013 C 752.3333333333334,87.28801431127013 752.3333333333334,105.32021466905186 720.6666666666667,105.32021466905186 C 689,105.32021466905186 689,165.17710196779964 657.3333333333334,165.17710196779964 C 625.6666666666667,165.17710196779964 625.6666666666667,204.74776386404292 594,204.74776386404292 C 562.3333333333334,204.74776386404292 562.3333333333334,199.23792486583184 530.6666666666667,199.23792486583184 C 499.00000000000006,199.23792486583184 499.00000000000006,204.24686940966012 467.33333333333337,204.24686940966012 C 435.6666666666667,204.24686940966012 435.6666666666667,197.48479427549194 404,197.48479427549194 C 372.33333333333337,197.48479427549194 372.33333333333337,206 340.6666666666667,206 C 309,206 309,205.49910554561717 277.33333333333337,205.49910554561717 C 245.66666666666669,205.49910554561717 245.66666666666669,204.74776386404292 214,204.74776386404292 C 182.33333333333334,204.74776386404292 182.33333333333334,205.24865831842575 150.66666666666669,205.24865831842575 C 119.00000000000001,205.24865831842575 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#3572A5" fill-opacity="0.75" class="fade-3"/><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.24865831842575 150.66666666666669,205.24865831842575 C 182.33333333333334,205.24865831842575 182.33333333333334,204.74776386404292 214,204.74776386404292 C 245.66666666666669,204.74776386404292 245.66666666666669,205.49910554561717 277.33333333333337,205.49910554561717 C 309,205.49910554561717 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,197.48479427549194 404,197.48479427549194 C 435.6666666666667,197.48479427549194 435.6666666666667,204.24686940966012 467.33333333333337,204.24686940966012 C 499.00000000000006,204.24686940966012 499.00000000000006,199.23792486583184 530.6666666666667,199.23792486583184 C 562.3333333333334,199.23792486583184 562.3333333333334,204.74776386404292 594,204.74776386404292 C 625.6666666666667,204.74776386404292 625.6666666666667,165.17710196779964 657.3333333333334,165.17710196779964 C 689,165.17710196779964 689,105.32021466905186 720.6666666666667,105.32021466905186 C 752.3333333333334,105.32021466905186 752.3333333333334,87.28801431127013 784,87.28801431127013 L 784,103.8175313059034 C 752.3333333333334,103.8175313059034 752.3333333333334,119.34525939177102 720.6666666666667,119.34525939177102 C 689,119.34525939177102 689,170.93738819320214 657.3333333333334,170.93738819320214 C 625.6666666666667,170.93738819320214 625.6666666666667,204.99821109123434 594,204.99821109123434 C 562.3333333333334,204.99821109123434 562.3333333333334,200.2397137745975 530.6666666666667,200.2397137745975 C 499.00000000000006,200.2397137745975 499.00000000000006,204.4973166368515 467.33333333333337,204.4973166368515 C 435.6666666666667,204.4973166368515 435.6666666666667,198.737030411449 404,198.737030411449 C 372.33333333333337,198.737030411449 372.33333333333337,206 340.6666666666667,206 C 309,206 309,205.49910554561717 277.33333333333337,205.49910554561717 C 245.66666666666669,205.49910554561717 245.66666666666669,204.99821109123434 214,204.99821109123434 C 182.33333333333334,204.99821109123434 182.33333333333334,205.24865831842575 150.66666666666669,205.24865831842575 C 119.00000000000001,205.24865831842575 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#00ADD8" fill-opacity="0.75" class="fade-4"/><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.24865831842575 150.66666666666669,205.24865831842575 C 182.33333333333334,205.24865831842575 182.33333333333334,204.99821109123434 214,204.99821109123434 C 245.66666666666669,204.99821109123434 245.66666666666669,205.49910554561717 277.33333333333337,205.49910554561717 C 309,205.49910554561717 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,198.737030411449 404,198.737030411449 C 435.6666666666667,198.737030411449 435.6666666666667,204.4973166368515 467.33333333333337,204.4973166368515 C 499.00000000000006,204.4973166368515 499.00000000000006,200.2397137745975 530.6666666666667,200.2397137745975 C 562.3333333333334,200.2397137745975 562.3333333333334,204.99821109123434 594,204.99821109123434 C 625.6666666666667,204.99821109123434 625.6666666666667,170.93738819320214 657.3333333333334,170.93738819320214 C 689,170.93738819320214 689,119.34525939177102 720.6666666666667,119.34525939177102 C 752.3333333333334,119.34525939177102 752.3333333333334,103.8175313059034 784,103.8175313059034 L 784,124.35420393559927 C 752.3333333333334,124.35420393559927 752.3333333333334,136.87656529516994 720.6666666666667,136.87656529516994 C 689,136.87656529516994 689,177.9499105545617 657.3333333333334,177.9499105545617 C 625.6666666666667,177.9499105545617 625.6666666666667,205.24865831842575 594,205.24865831842575 C 562.3333333333334,205.24865831842575 562.3333333333334,201.49194991055455 530.6666666666667,201.49194991055455 C 499.00000000000006,201.49194991055455 499.00000000000006,204.74776386404292 467.33333333333337,204.74776386404292 C 435.6666666666667,204.74776386404292 435.6666666666667,200.2397137745975 404,200.2397137745975 C 372.33333333333337,200.2397137745975 372.33333333333337,206 340.6666666666667,206 C 309,206 309,205.49910554561717 277.33333333333337,205.49910554561717 C 245.66666666666669,205.49910554561717 245.66666666666669,205.24865831842575 214,205.24865831842575 C 182.33333333333334,205.24865831842575 182.33333333333334,205.49910554561717 150.66666666666669,205.49910554561717 C 119.00000000000001,205.49910554561717 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#89e051" fill-opacity="0.75" class="fade-5"/><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.49910554561717 150.66666666666669,205.49910554561717 C 182.33333333333334,205.49910554561717 182.33333333333334,205.24865831842575 214,205.24865831842575 C 245.66666666666669,205.24865831842575 245.66666666666669,205.49910554561717 277.33333333333337,205.49910554561717 C 309,205.49910554561717 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,200.2397137745975 404,200.2397137745975 C 435.6666666666667,200.2397137745975 435.6666666666667,204.74776386404292 467.33333333333337,204.74776386404292 C 499.00000000000006,204.74776386404292 499.00000000000006,201.49194991055455 530.6666666666667,201.49194991055455 C 562.3333333333334,201.49194991055455 562.3333333333334,205.24865831842575 594,205.24865831842575 C 625.6666666666667,205.24865831842575 625.6666666666667,177.9499105545617 657.3333333333334,177.9499105545617 C 689,177.9499105545617 689,136.87656529516994 720.6666666666667,136.87656529516994 C 752.3333333333334,136.87656529516994 752.3333333333334,124.35420393559927 784,124.35420393559927 L 784,156.912343470483 C 752.3333333333334,156.912343470483 752.3333333333334,164.4257602862254 720.6666666666667,164.4257602862254 C 689,164.4257602862254 689,189.22003577817532 657.3333333333334,189.22003577817532 C 625.6666666666667,189.22003577817532 625.6666666666667,205.49910554561717 594,205.49910554561717 C 562.3333333333334,205.49910554561717 562.3333333333334,203.24508050089446 530.6666666666667,203.24508050089446 C 499.00000000000006,203.24508050089446 499.00000000000006,205.24865831842575 467.33333333333337,205.24865831842575 C 435.6666666666667,205.24865831842575 435.6666666666667,202.4937388193202 404,202.4937388193202 C 372.33333333333337,202.4937388193202 372.33333333333337,206 340.6666666666667,206 C 309,206 309,205.74955277280858 277.33333333333337,205.74955277280858 C 245.66666666666669,205.74955277280858 245.66666666666669,205.49910554561717 214,205.49910554561717 C 182.33333333333334,205.49910554561717 182.33333333333334,205.74955277280858 150.66666666666669,205.74955277280858 C 119.00000000000001,205.74955277280858 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#3178c6" fill-opacity="0.75" class="fade-6"/><path d="M 24,206 C 55.66666666666667,206 55.66666666666667,206 87.33333333333334,206 C 119.00000000000001,206 119.00000000000001,205.74955277280858 150.66666666666669,205.74955277280858 C 182.33333333333334,205.74955277280858 182.33333333333334,205.49910554561717 214,205.49910554561717 C 245.66666666666669,205.49910554561717 245.66666666666669,205.74955277280858 277.33333333333337,205.74955277280858 C 309,205.74955277280858 309,206 340.6666666666667,206 C 372.33333333333337,206 372.33333333333337,202.4937388193202 404,202.4937388193202 C 435.6666666666667,202.4937388193202 435.6666666666667,205.24865831842575 467.33333333333337,205.24865831842575 C 499.00000000000006,205.24865831842575 499.00000000000006,203.24508050089446 530.6666666666667,203.24508050089446 C 562.3333333333334,203.24508050089446 562.3333333333334,205.49910554561717 594,205.49910554561717 C 625.6666666666667,205.49910554561717 625.6666666666667,189.22003577817532 657.3333333333334,189.22003577817532 C 689,189.22003577817532 689,164.4257602862254 720.6666666666667,164.4257602862254 C 752.3333333333334,164.4257602862254 752.3333333333334,156.912343470483 784,156.912343470483 L 784,206 C 752.3333333333334,206 752.3333333333334,206 720.6666666666667,206 C 689,206 689,206 657.3333333333334,206 C 625.6666666666667,206 625.6666666666667,206 594,206 C 562.3333333333334,206 562.3333333333334,206 530.6666666666667,206 C 499.00000000000006,206 499.00000000000006,206 467.33333333333337,206 C 435.6666666666667,206 435.6666666666667,206 404,206 C 372.33333333333337,206 372.33333333333337,206 340.6666666666667,206 C 309,206 309,206 277.33333333333337,206 C 245.66666666666669,206 245.66666666666669,206 214,206 C 182.33333333333334,206 182.33333333333334,206 150.66666666666669,206 C 119.00000000000001,206 119.00000000000001,206 87.33333333333334,206 C 55.66666666666667,206 55.66666666666667,206 24,206 Z" fill="#dea584" fill-opacity="0.75" class="fade-6"/><rect x="24" y="212" width="8" height="8" rx="2" fill="#dea584" opacity="0.85"/><text x="36" y="220" class="t t-value">Rust</text><rect x="80" y="212" width="8" height="8" rx="2" fill="#3178c6" opacity="0.85"/><text x="92" y="220" class="t t-value">TypeScript</text><rect x="178" y="212" width="8" height="8" rx="2" fill="#89e051" opacity="0.85"/><text x="190" y="220" class="t t-value">Shell</text><rect x="241" y="212" width="8" height="8" rx="2" fill="#00ADD8" opacity="0.85"/><text x="253" y="220" class="t t-value">Go</text><rect x="283" y="212" width="8" height="8" rx="2" fill="#3572A5" opacity="0.85"/><text x="295" y="220" class="t t-value">Python</text><rect x="353" y="212" width="8" height="8" rx="2" fill="#b07219" opacity="0.85"/><text x="365" y="220" class="t t-value">Java</text><rect x="409" y="212" width="8" height="8" rx="2" fill="#DA5B0B" opacity="0.85"/><text x="421" y="220" class="t t-value">Jupyter Notebook</text><text x="24" y="220" class="t t-value" text-anchor="start" opacity="0">Feb</text><text x="150.66666666666669" y="220" class="t t-value" text-anchor="start" opacity="0">Apr</text><text x="277.33333333333337" y="220" class="t t-value" text-anchor="start" opacity="0">Jun</text><text x="404" y="220" class="t t-value" text-anchor="start" opacity="0">Aug</text><text x="530.6666666666667" y="220" class="t t-value" text-anchor="start" opacity="0">Oct</text><text x="657.3333333333334" y="220" class="t t-value" text-anchor="start" opacity="0">Dec</text><text x="784" y="220" class="t t-value" text-anchor="start" opacity="0">Feb</text></svg>
|
package/llms.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# GitHub
|
|
1
|
+
# GitHub Insights
|
|
2
2
|
|
|
3
|
-
> A GitHub Action that generates beautiful SVG metrics visualizations for GitHub profile READMEs. Produces language
|
|
3
|
+
> A GitHub Action that generates beautiful SVG metrics visualizations for GitHub profile READMEs. Produces language velocity streamgraphs, contribution rhythm radar charts, project constellation maps, open source impact trails, AI-powered project classification, social badges, and an auto-generated profile introduction. SVGs support light/dark theme switching and CSS animations. Built with TypeScript/Node.js using JSX for SVG string rendering.
|
|
4
4
|
|
|
5
5
|
## Docs
|
|
6
6
|
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
|
|
14
14
|
- [src/index.ts](https://github.com/urmzd/github-insights/blob/main/src/index.ts): Main action entry point
|
|
15
15
|
- [src/api.ts](https://github.com/urmzd/github-insights/blob/main/src/api.ts): GitHub GraphQL/REST API calls + AI model calls
|
|
16
|
-
- [src/metrics.ts](https://github.com/urmzd/github-insights/blob/main/src/metrics.ts): Data aggregation
|
|
16
|
+
- [src/metrics.ts](https://github.com/urmzd/github-insights/blob/main/src/metrics.ts): Data aggregation, velocity/rhythm/constellation computation, section definitions
|
|
17
17
|
- [src/types.ts](https://github.com/urmzd/github-insights/blob/main/src/types.ts): Shared type definitions (UserConfig, SectionDef, etc.)
|
|
18
|
-
- [src/components/](https://github.com/urmzd/github-insights/blob/main/src/components/): SVG rendering components (
|
|
18
|
+
- [src/components/](https://github.com/urmzd/github-insights/blob/main/src/components/): SVG rendering components (streamgraph, radar chart, constellation, impact trail)
|
|
19
19
|
- [action.yml](https://github.com/urmzd/github-insights/blob/main/action.yml): GitHub Action definition
|
|
20
20
|
|
|
21
21
|
## Optional
|
package/package.json
CHANGED