|
8 | 8 | <link rel="manifest" href="/manifest.json"> |
9 | 9 | <link rel="preconnect" href="https://fonts.googleapis.com"> |
10 | 10 | <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> |
11 | | -<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet"> |
| 11 | +<link href="https://fonts.googleapis.com/css2?family=Public+Sans:wght@200;300;400;500;600;700&family=Martian+Mono:wght@300;400;500&family=Lexend+Peta:wght@400&display=swap" rel="stylesheet"> |
12 | 12 |
|
13 | 13 | <title>GraphCache Class — mcp Architecture | mcp Architecture Docs</title> |
14 | 14 | <meta name="description" content="Architecture documentation for the GraphCache class in graph-cache.ts from the mcp codebase."> |
|
25 | 25 | <meta name="twitter:image" content="https://repos.supermodeltools.com/images/share/class-graph-cache-ts-graphcache.svg"> |
26 | 26 |
|
27 | 27 | <style>:root { |
28 | | - --bg: #0f1117; |
29 | | - --bg-card: #1a1d27; |
30 | | - --bg-hover: #22263a; |
31 | | - --border: #2a2e3e; |
32 | | - --text: #e4e4e7; |
33 | | - --text-muted: #9ca3af; |
34 | | - --accent: #6366f1; |
35 | | - --accent-light: #818cf8; |
36 | | - --green: #22c55e; |
37 | | - --orange: #f59e0b; |
38 | | - --red: #ef4444; |
39 | | - --blue: #3b82f6; |
40 | | - --font: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; |
41 | | - --mono: 'JetBrains Mono', 'Fira Code', monospace; |
| 28 | + --bg: #000000; |
| 29 | + --bg-card: #161616; |
| 30 | + --bg-hover: #08191C; |
| 31 | + --border: #202020; |
| 32 | + --text: #FFFFFF; |
| 33 | + --text-muted: #808080; |
| 34 | + --accent: #71B9BC; |
| 35 | + --accent-light: #8CC6C9; |
| 36 | + --green: #7CCE86; |
| 37 | + --orange: #D0A27D; |
| 38 | + --red: #E589C6; |
| 39 | + --blue: #8E8CE9; |
| 40 | + --font: 'Public Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; |
| 41 | + --mono: 'Martian Mono', "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace; |
42 | 42 | --max-w: 1200px; |
43 | | - --radius: 8px; |
| 43 | + --radius: 0px; |
44 | 44 | } |
45 | 45 |
|
46 | 46 | * { margin: 0; padding: 0; box-sizing: border-box; } |
|
51 | 51 | font-family: var(--font); |
52 | 52 | background: var(--bg); |
53 | 53 | color: var(--text); |
54 | | - line-height: 1.6; |
| 54 | + line-height: 1.5; |
| 55 | + font-weight: 300; |
| 56 | + letter-spacing: 0em; |
55 | 57 | -webkit-font-smoothing: antialiased; |
56 | 58 | overflow-x: hidden; |
57 | 59 | } |
|
60 | 62 | a:hover { text-decoration: underline; } |
61 | 63 | a:focus-visible, button:focus-visible { outline: 2px solid var(--accent-light); outline-offset: 2px; border-radius: 2px; } |
62 | 64 |
|
63 | | -.skip-link { position: absolute; top: -100%; left: 16px; background: var(--accent); color: #fff; padding: 8px 16px; border-radius: 6px; z-index: 1001; font-size: 14px; font-weight: 600; } |
| 65 | +.skip-link { position: absolute; top: -100%; left: 16px; background: var(--accent); color: #000; padding: 8px 16px; border-radius: 6px; z-index: 1001; font-size: 14px; font-weight: 600; } |
64 | 66 | .skip-link:focus { top: 12px; } |
65 | 67 |
|
66 | 68 | .container { max-width: var(--max-w); margin: 0 auto; padding: 0 24px; } |
|
82 | 84 | } |
83 | 85 | .site-brand { |
84 | 86 | font-size: 18px; |
85 | | - font-weight: 700; |
| 87 | + font-weight: 400; |
86 | 88 | color: var(--text); |
87 | 89 | display: flex; |
88 | 90 | align-items: center; |
|
93 | 95 | .site-brand:hover { text-decoration: none; color: var(--accent-light); } |
94 | 96 | .site-brand svg { width: 24px; height: 24px; } |
95 | 97 | .site-nav { display: flex; gap: 16px; align-items: center; overflow-x: auto; -webkit-overflow-scrolling: touch; } |
96 | | -.site-nav a { color: var(--text-muted); font-size: 14px; font-weight: 500; white-space: nowrap; } |
| 98 | +.site-nav a { color: var(--text-muted); font-size: 0.68rem; font-weight: 300; font-family: var(--mono); text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; } |
97 | 99 | .site-nav a:hover { color: var(--text); text-decoration: none; } |
98 | 100 | .nav-all-repos { color: var(--accent-light) !important; padding-right: 12px; margin-right: 4px; border-right: 1px solid var(--border); } |
99 | 101 | .nav-all-repos:hover { color: var(--text) !important; } |
|
125 | 127 | .entity-breadcrumb .sep { opacity: 0.4; } |
126 | 128 | .entity-title { |
127 | 129 | font-size: 28px; |
128 | | - font-weight: 700; |
| 130 | + font-weight: 300; |
129 | 131 | line-height: 1.3; |
| 132 | + letter-spacing: -0.02em; |
130 | 133 | margin-bottom: 8px; |
131 | 134 | overflow-wrap: break-word; |
132 | 135 | word-break: break-word; |
|
170 | 173 | border-radius: 20px; |
171 | 174 | font-size: 12px; |
172 | 175 | color: var(--text-muted); |
173 | | - font-weight: 500; |
| 176 | + font-weight: 400; |
| 177 | + font-family: var(--mono); |
174 | 178 | text-decoration: none; |
175 | 179 | } |
176 | 180 | a.pill:hover { |
|
188 | 192 | } |
189 | 193 | .entity-section h2 { |
190 | 194 | font-size: 18px; |
191 | | - font-weight: 600; |
| 195 | + font-weight: 400; |
| 196 | + letter-spacing: -0.02em; |
192 | 197 | margin-bottom: 12px; |
193 | 198 | padding-bottom: 8px; |
194 | 199 | border-bottom: 1px solid var(--border); |
|
233 | 238 | .card-title { |
234 | 239 | font-size: 15px; |
235 | 240 | font-weight: 600; |
| 241 | + letter-spacing: -0.02em; |
236 | 242 | color: var(--text); |
237 | 243 | margin-bottom: 6px; |
238 | 244 | overflow-wrap: break-word; |
|
260 | 266 | } |
261 | 267 | .hero h1 { |
262 | 268 | font-size: 36px; |
263 | | - font-weight: 700; |
| 269 | + font-weight: 200; |
| 270 | + letter-spacing: -0.04em; |
264 | 271 | margin-bottom: 12px; |
265 | 272 | } |
266 | 273 | .hero p { |
|
296 | 303 | } |
297 | 304 | .hero-btn svg { width: 16px; height: 16px; flex-shrink: 0; } |
298 | 305 | .hero-btn-star { border-color: var(--orange); color: var(--orange); } |
299 | | -.hero-btn-star:hover { background: rgba(245, 158, 11, 0.1); } |
| 306 | +.hero-btn-star:hover { background: rgba(208, 162, 125, 0.1); } |
300 | 307 | .hero-btn-fork { border-color: var(--blue); color: var(--blue); } |
301 | | -.hero-btn-fork:hover { background: rgba(59, 130, 246, 0.1); } |
| 308 | +.hero-btn-fork:hover { background: rgba(142, 140, 233, 0.1); } |
302 | 309 | .hero-stats { |
303 | 310 | display: flex; |
304 | 311 | justify-content: center; |
305 | | - gap: 32px; |
| 312 | + flex-wrap: wrap; |
| 313 | + gap: 16px 32px; |
306 | 314 | margin-top: 32px; |
307 | 315 | } |
308 | 316 | .hero-stat { text-align: center; } |
309 | 317 | .hero-stat .num { |
310 | 318 | font-size: 28px; |
311 | | - font-weight: 700; |
| 319 | + font-weight: 300; |
| 320 | + letter-spacing: -0.02em; |
312 | 321 | color: var(--accent-light); |
313 | 322 | } |
314 | 323 | .hero-stat .label { |
|
329 | 338 |
|
330 | 339 | .section-title { |
331 | 340 | font-size: 22px; |
332 | | - font-weight: 700; |
| 341 | + font-weight: 300; |
| 342 | + letter-spacing: -0.02em; |
333 | 343 | margin-bottom: 16px; |
334 | 344 | } |
335 | 345 | .section-subtitle { |
|
347 | 357 | } |
348 | 358 | .hub-header h1 { |
349 | 359 | font-size: 28px; |
350 | | - font-weight: 700; |
| 360 | + font-weight: 300; |
| 361 | + letter-spacing: -0.02em; |
351 | 362 | } |
352 | 363 | .hub-desc { |
353 | 364 | color: var(--text-muted); |
|
388 | 399 | } |
389 | 400 | .pagination .current { |
390 | 401 | background: var(--accent); |
391 | | - color: white; |
| 402 | + color: #000; |
392 | 403 | } |
393 | 404 |
|
394 | 405 |
|
|
457 | 468 | gap: 12px; |
458 | 469 | } |
459 | 470 | .visuals-panel h3 { |
460 | | - font-size: 13px; |
461 | | - font-weight: 600; |
| 471 | + font-size: 10px; |
| 472 | + font-weight: 400; |
| 473 | + font-family: 'Lexend Peta', sans-serif; |
462 | 474 | color: var(--text-muted); |
463 | 475 | text-transform: uppercase; |
464 | | - letter-spacing: 0.04em; |
| 476 | + letter-spacing: 0em; |
465 | 477 | margin: 0 0 8px 0; |
466 | 478 | padding: 0; |
467 | 479 | border: none; |
|
547 | 559 |
|
548 | 560 |
|
549 | 561 | .cta-section { |
550 | | - background: linear-gradient(135deg, var(--bg-card) 0%, #12141d 100%); |
| 562 | + background: linear-gradient(135deg, var(--bg-card) 0%, #08191C 100%); |
551 | 563 | border: 1px solid var(--accent); |
552 | 564 | border-radius: var(--radius); |
553 | 565 | padding: 40px 32px; |
|
557 | 569 | } |
558 | 570 | .cta-heading { |
559 | 571 | font-size: 22px; |
560 | | - font-weight: 700; |
| 572 | + font-weight: 300; |
| 573 | + letter-spacing: -0.02em; |
561 | 574 | margin-bottom: 8px; |
562 | 575 | border-bottom: none !important; |
563 | 576 | padding-bottom: 0 !important; |
|
572 | 585 | display: inline-block; |
573 | 586 | padding: 12px 28px; |
574 | 587 | background: var(--accent); |
575 | | - color: #fff; |
| 588 | + color: #000; |
576 | 589 | font-size: 15px; |
577 | 590 | font-weight: 600; |
578 | 591 | border-radius: 6px; |
|
592 | 605 | margin-bottom: 32px; |
593 | 606 | } |
594 | 607 | .chart-panel h3 { |
595 | | - font-size: 13px; |
596 | | - font-weight: 600; |
| 608 | + font-size: 10px; |
| 609 | + font-weight: 400; |
| 610 | + font-family: 'Lexend Peta', sans-serif; |
597 | 611 | color: var(--text-muted); |
598 | 612 | text-transform: uppercase; |
599 | | - letter-spacing: 0.04em; |
| 613 | + letter-spacing: 0em; |
600 | 614 | margin: 0 0 12px 0; |
601 | 615 | } |
602 | 616 | .chart-panel-compact { |
|
633 | 647 | margin: 0 0 8px 0; |
634 | 648 | } |
635 | 649 | .source-code { |
636 | | - background: #0d0f14; |
| 650 | + background: #161616; |
637 | 651 | border: 1px solid var(--border); |
638 | 652 | border-radius: var(--radius); |
639 | 653 | padding: 16px; |
|
646 | 660 | .source-code code { |
647 | 661 | font-family: var(--mono); |
648 | 662 | font-size: 13px; |
649 | | - color: #e4e4e7; |
| 663 | + color: #FFFFFF; |
650 | 664 | white-space: pre; |
651 | 665 | tab-size: 2; |
652 | 666 | margin-bottom: 0; |
653 | 667 | } |
| 668 | + |
| 669 | +.hp-composition { |
| 670 | + display: flex; |
| 671 | + flex-wrap: wrap; |
| 672 | + gap: 3px; |
| 673 | + height: 200px; |
| 674 | +} |
| 675 | +.hp-comp-item { |
| 676 | + display: flex; |
| 677 | + flex-direction: column; |
| 678 | + justify-content: flex-end; |
| 679 | + padding: 10px 12px; |
| 680 | + text-decoration: none; |
| 681 | + opacity: 0.85; |
| 682 | + transition: opacity 0.2s; |
| 683 | + box-sizing: border-box; |
| 684 | + align-self: stretch; |
| 685 | +} |
| 686 | +.hp-comp-item:hover { opacity: 1; text-decoration: none; } |
| 687 | +.hp-comp-name { |
| 688 | + color: #fff; |
| 689 | + font-size: 13px; |
| 690 | + font-weight: 600; |
| 691 | + font-family: var(--font); |
| 692 | + white-space: nowrap; |
| 693 | +} |
| 694 | +.hp-comp-count { |
| 695 | + color: rgba(255,255,255,0.7); |
| 696 | + font-size: 12px; |
| 697 | + font-family: var(--mono); |
| 698 | + margin-top: 2px; |
| 699 | +} |
| 700 | + |
654 | 701 | #homepage-chart, #hub-chart, #all-entities-chart { width: 100%; } |
655 | 702 | #homepage-chart svg, #hub-chart svg, #taxonomy-chart svg, #all-entities-chart svg, #letter-chart svg { |
656 | 703 | width: 100%; |
|
688 | 735 | } |
689 | 736 | .letter-active { |
690 | 737 | background: var(--accent); |
691 | | - color: #fff; |
| 738 | + color: #000; |
692 | 739 | border-color: var(--accent); |
693 | 740 | } |
694 | 741 |
|
|
741 | 788 | .hero p { font-size: 15px; } |
742 | 789 | .hero-actions { gap: 8px; } |
743 | 790 | .hero-btn { padding: 6px 12px; font-size: 12px; } |
744 | | - .hero-stats { flex-wrap: wrap; gap: 12px; } |
| 791 | + .hero-stats { gap: 8px 16px; } |
745 | 792 | .hero-stat .num { font-size: 22px; } |
746 | 793 | .hero-stat .label { font-size: 12px; } |
747 | 794 | .hero-stat-link { padding: 8px 12px; } |
@@ -912,7 +959,7 @@ <h3>Entity Profile</h3> |
912 | 959 | <div class="visuals-cell force-graph-container"> |
913 | 960 | <h3>Relationship Graph</h3> |
914 | 961 | <div id="force-graph" data-center="class-graph-cache-ts-graphcache"></div> |
915 | | - <script type="application/json" id="graph-data">{"nodes":[{"id":"c2eb74ac:3bb0:0ead:139a:f51ea3d5dca3","label":"GraphCache","type":"Class","slug":"class-graph-cache-ts-graphcache","lc":104,"lang":"typescript"},{"id":"domain:GraphCache","label":"GraphCache","type":"Domain","slug":"domain-graphcache"}],"edges":[{"source":"c2eb74ac:3bb0:0ead:139a:f51ea3d5dca3","target":"domain:GraphCache","type":"belongsTo"}]}</script> |
| 962 | + <script type="application/json" id="graph-data">{"nodes":[{"id":"be405d12:7b97:3e5d:c94e:cdd3454802d7","label":"GraphCache","type":"Class","slug":"class-graph-cache-ts-graphcache","lc":104,"lang":"typescript"},{"id":"domain:GraphCache","label":"GraphCache","type":"Domain","slug":"domain-graphcache"}],"edges":[{"source":"be405d12:7b97:3e5d:c94e:cdd3454802d7","target":"domain:GraphCache","type":"belongsTo"}]}</script> |
916 | 963 | <noscript><p class="text-muted">Enable JavaScript to view the interactive relationship graph.</p></noscript> |
917 | 964 | </div> |
918 | 965 |
|
|
0 commit comments