Spaces:
Running
Running
feat(galaxy): Darwin-centered Galaxy Hero (?config=config_darwin.json) + fullscreen popup modal (FAB)
Browse files- index.html +187 -17
index.html
CHANGED
|
@@ -1479,6 +1479,121 @@ button { font-family: inherit; }
|
|
| 1479 |
background: var(--accent);
|
| 1480 |
}
|
| 1481 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1482 |
/* ---------- HERO 2 — MODEL GALAXY EMBED ---------- */
|
| 1483 |
.hero-2 {
|
| 1484 |
border-top: 1px solid var(--border-strong);
|
|
@@ -1921,27 +2036,27 @@ button { font-family: inherit; }
|
|
| 1921 |
<section id="galaxy" class="hero-2">
|
| 1922 |
<div class="container">
|
| 1923 |
<div class="hero-2-inner">
|
| 1924 |
-
<div class="section-eyebrow reveal">— Live · Interactive ·
|
| 1925 |
-
<h2 class="section-title reveal">
|
| 1926 |
<p class="section-lead reveal">
|
| 1927 |
-
Darwin
|
| 1928 |
</p>
|
| 1929 |
<div class="hero-2-stats reveal">
|
| 1930 |
<div class="hero-2-stat">
|
| 1931 |
-
<div class="hero-2-stat-num">
|
| 1932 |
-
<div class="hero-2-stat-label">
|
| 1933 |
</div>
|
| 1934 |
<div class="hero-2-stat">
|
| 1935 |
-
<div class="hero-2-stat-num">
|
| 1936 |
-
<div class="hero-2-stat-label">
|
| 1937 |
</div>
|
| 1938 |
<div class="hero-2-stat">
|
| 1939 |
-
<div class="hero-2-stat-num">
|
| 1940 |
-
<div class="hero-2-stat-label">
|
| 1941 |
</div>
|
| 1942 |
<div class="hero-2-stat">
|
| 1943 |
-
<div class="hero-2-stat-num">
|
| 1944 |
-
<div class="hero-2-stat-label">초기 로딩 (
|
| 1945 |
</div>
|
| 1946 |
</div>
|
| 1947 |
</div>
|
|
@@ -1949,8 +2064,8 @@ button { font-family: inherit; }
|
|
| 1949 |
|
| 1950 |
<div class="hero-2-frame-wrap reveal">
|
| 1951 |
<iframe class="hero-2-iframe"
|
| 1952 |
-
src="https://final-bench-model-galaxy.hf.space"
|
| 1953 |
-
title="
|
| 1954 |
loading="lazy"
|
| 1955 |
allow="fullscreen"
|
| 1956 |
referrerpolicy="no-referrer">
|
|
@@ -1959,11 +2074,14 @@ button { font-family: inherit; }
|
|
| 1959 |
|
| 1960 |
<div class="container">
|
| 1961 |
<div class="hero-2-footer reveal">
|
| 1962 |
-
<a href="https://
|
| 1963 |
-
Open
|
|
|
|
|
|
|
|
|
|
| 1964 |
</a>
|
| 1965 |
-
<span class="hero-2-hint">갤럭시
|
| 1966 |
-
<span class="hero-2-meta">
|
| 1967 |
</div>
|
| 1968 |
</div>
|
| 1969 |
</section>
|
|
@@ -2910,6 +3028,58 @@ button { font-family: inherit; }
|
|
| 2910 |
</div>
|
| 2911 |
</footer>
|
| 2912 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2913 |
<script>
|
| 2914 |
// Hero video sequential playlist (VD1.mp4 → VD2.mp4 → 무한 loop)
|
| 2915 |
// + case-insensitive fallback (HF는 case-sensitive — vd2.mp4 / VD2.mp4 양쪽 자동 시도)
|
|
|
|
| 1479 |
background: var(--accent);
|
| 1480 |
}
|
| 1481 |
|
| 1482 |
+
/* ---------- GALAXY MODAL (popup fullscreen) ---------- */
|
| 1483 |
+
.galaxy-modal {
|
| 1484 |
+
position: fixed;
|
| 1485 |
+
inset: 0;
|
| 1486 |
+
background: rgba(8, 8, 11, 0.96);
|
| 1487 |
+
backdrop-filter: blur(8px);
|
| 1488 |
+
-webkit-backdrop-filter: blur(8px);
|
| 1489 |
+
z-index: 1000;
|
| 1490 |
+
display: none;
|
| 1491 |
+
align-items: stretch;
|
| 1492 |
+
justify-content: stretch;
|
| 1493 |
+
animation: modalFadeIn 0.4s cubic-bezier(0.22, 1, 0.36, 1);
|
| 1494 |
+
}
|
| 1495 |
+
.galaxy-modal.open { display: flex; }
|
| 1496 |
+
@keyframes modalFadeIn {
|
| 1497 |
+
from { opacity: 0; backdrop-filter: blur(0); }
|
| 1498 |
+
to { opacity: 1; backdrop-filter: blur(8px); }
|
| 1499 |
+
}
|
| 1500 |
+
.galaxy-modal-inner {
|
| 1501 |
+
position: relative;
|
| 1502 |
+
width: 100%;
|
| 1503 |
+
height: 100%;
|
| 1504 |
+
display: flex;
|
| 1505 |
+
flex-direction: column;
|
| 1506 |
+
}
|
| 1507 |
+
.galaxy-modal-header {
|
| 1508 |
+
display: flex;
|
| 1509 |
+
justify-content: space-between;
|
| 1510 |
+
align-items: center;
|
| 1511 |
+
padding: 14px 32px;
|
| 1512 |
+
border-bottom: 1px solid var(--border-strong);
|
| 1513 |
+
background: rgba(11, 11, 14, 0.85);
|
| 1514 |
+
}
|
| 1515 |
+
.galaxy-modal-title {
|
| 1516 |
+
font-family: 'Inter', 'Pretendard', sans-serif;
|
| 1517 |
+
font-size: 13px;
|
| 1518 |
+
font-weight: 600;
|
| 1519 |
+
color: var(--text-primary);
|
| 1520 |
+
letter-spacing: -0.005em;
|
| 1521 |
+
display: flex;
|
| 1522 |
+
align-items: center;
|
| 1523 |
+
gap: 12px;
|
| 1524 |
+
}
|
| 1525 |
+
.galaxy-modal-title::before {
|
| 1526 |
+
content: '';
|
| 1527 |
+
width: 6px;
|
| 1528 |
+
height: 6px;
|
| 1529 |
+
background: var(--accent);
|
| 1530 |
+
border-radius: 50%;
|
| 1531 |
+
box-shadow: 0 0 8px var(--accent);
|
| 1532 |
+
animation: pulse 2s infinite;
|
| 1533 |
+
}
|
| 1534 |
+
.galaxy-modal-close {
|
| 1535 |
+
font-family: 'Inter', sans-serif;
|
| 1536 |
+
font-size: 13px;
|
| 1537 |
+
font-weight: 500;
|
| 1538 |
+
color: var(--text-secondary);
|
| 1539 |
+
background: transparent;
|
| 1540 |
+
border: 1px solid var(--border-strong);
|
| 1541 |
+
padding: 8px 16px;
|
| 1542 |
+
cursor: pointer;
|
| 1543 |
+
border-radius: 4px;
|
| 1544 |
+
transition: all 0.2s ease;
|
| 1545 |
+
}
|
| 1546 |
+
.galaxy-modal-close:hover {
|
| 1547 |
+
color: var(--text-primary);
|
| 1548 |
+
border-color: var(--accent);
|
| 1549 |
+
background: var(--accent-dim);
|
| 1550 |
+
}
|
| 1551 |
+
.galaxy-modal-iframe {
|
| 1552 |
+
flex: 1;
|
| 1553 |
+
width: 100%;
|
| 1554 |
+
border: 0;
|
| 1555 |
+
background: #000;
|
| 1556 |
+
}
|
| 1557 |
+
|
| 1558 |
+
/* Open Galaxy Trigger Button (floating) */
|
| 1559 |
+
.galaxy-fab {
|
| 1560 |
+
position: fixed;
|
| 1561 |
+
bottom: 28px;
|
| 1562 |
+
right: 28px;
|
| 1563 |
+
z-index: 90;
|
| 1564 |
+
background: linear-gradient(135deg, var(--accent), var(--accent-bright));
|
| 1565 |
+
color: var(--text-primary);
|
| 1566 |
+
border: 0;
|
| 1567 |
+
padding: 14px 22px;
|
| 1568 |
+
font-family: 'Inter', 'Pretendard', sans-serif;
|
| 1569 |
+
font-size: 13px;
|
| 1570 |
+
font-weight: 600;
|
| 1571 |
+
letter-spacing: -0.005em;
|
| 1572 |
+
border-radius: 100px;
|
| 1573 |
+
cursor: pointer;
|
| 1574 |
+
box-shadow: 0 8px 32px rgba(139, 92, 246, 0.4);
|
| 1575 |
+
display: inline-flex;
|
| 1576 |
+
align-items: center;
|
| 1577 |
+
gap: 10px;
|
| 1578 |
+
transition: transform 0.2s ease, box-shadow 0.2s ease;
|
| 1579 |
+
}
|
| 1580 |
+
.galaxy-fab:hover {
|
| 1581 |
+
transform: translateY(-2px);
|
| 1582 |
+
box-shadow: 0 12px 40px rgba(139, 92, 246, 0.55);
|
| 1583 |
+
}
|
| 1584 |
+
.galaxy-fab::before {
|
| 1585 |
+
content: '';
|
| 1586 |
+
width: 8px;
|
| 1587 |
+
height: 8px;
|
| 1588 |
+
background: #ffffff;
|
| 1589 |
+
border-radius: 50%;
|
| 1590 |
+
box-shadow: 0 0 10px rgba(255,255,255,0.7);
|
| 1591 |
+
animation: pulse 2s infinite;
|
| 1592 |
+
}
|
| 1593 |
+
@media (max-width: 720px) {
|
| 1594 |
+
.galaxy-fab { bottom: 18px; right: 18px; padding: 12px 18px; font-size: 12px; }
|
| 1595 |
+
}
|
| 1596 |
+
|
| 1597 |
/* ---------- HERO 2 — MODEL GALAXY EMBED ---------- */
|
| 1598 |
.hero-2 {
|
| 1599 |
border-top: 1px solid var(--border-strong);
|
|
|
|
| 2036 |
<section id="galaxy" class="hero-2">
|
| 2037 |
<div class="container">
|
| 2038 |
<div class="hero-2-inner">
|
| 2039 |
+
<div class="section-eyebrow reveal">— Live · Interactive · Darwin Family Centered</div>
|
| 2040 |
+
<h2 class="section-title reveal"><span style="color:var(--accent-bright);">Darwin</span> 갤럭시.<br>중심에 비드래프트.</h2>
|
| 2041 |
<p class="section-lead reveal">
|
| 2042 |
+
<strong style="color:var(--text-primary);">Darwin 공식 모델 약 20여종 + 자발적 커뮤니티 파생 400+종</strong>이 화면 중심에 배치된 인터랙티브 3D 갤럭시. 노드를 hover하면 모델명·다운로드·family 정보 표시, 클릭하면 부모-자식 진화 체인 (merge / quantize / adapter) 확인. 우상단 Atlas 셀렉터로 전체 HF Galaxy (22,400+ 모델) 비교 전환 가능.
|
| 2043 |
</p>
|
| 2044 |
<div class="hero-2-stats reveal">
|
| 2045 |
<div class="hero-2-stat">
|
| 2046 |
+
<div class="hero-2-stat-num">약 20<span class="small">여종</span></div>
|
| 2047 |
+
<div class="hero-2-stat-label">Darwin 공식 모델 (중심)</div>
|
| 2048 |
</div>
|
| 2049 |
<div class="hero-2-stat">
|
| 2050 |
+
<div class="hero-2-stat-num">400<span class="small">+</span></div>
|
| 2051 |
+
<div class="hero-2-stat-label">자발적 커뮤니티 파생</div>
|
| 2052 |
</div>
|
| 2053 |
<div class="hero-2-stat">
|
| 2054 |
+
<div class="hero-2-stat-num">4<span class="small">개 Atlas</span></div>
|
| 2055 |
+
<div class="hero-2-stat-label">Darwin / Modalities / Large NLP / 전체 HF</div>
|
| 2056 |
</div>
|
| 2057 |
<div class="hero-2-stat">
|
| 2058 |
+
<div class="hero-2-stat-num">3–8<span class="small">초</span></div>
|
| 2059 |
+
<div class="hero-2-stat-label">초기 로딩 (Darwin 33KB · 가벼움)</div>
|
| 2060 |
</div>
|
| 2061 |
</div>
|
| 2062 |
</div>
|
|
|
|
| 2064 |
|
| 2065 |
<div class="hero-2-frame-wrap reveal">
|
| 2066 |
<iframe class="hero-2-iframe"
|
| 2067 |
+
src="https://final-bench-model-galaxy.hf.space/?config=config_darwin.json"
|
| 2068 |
+
title="Darwin Galaxy — VIDRAFT 중심"
|
| 2069 |
loading="lazy"
|
| 2070 |
allow="fullscreen"
|
| 2071 |
referrerpolicy="no-referrer">
|
|
|
|
| 2074 |
|
| 2075 |
<div class="container">
|
| 2076 |
<div class="hero-2-footer reveal">
|
| 2077 |
+
<a href="https://final-bench-model-galaxy.hf.space/?config=config_darwin.json" target="_blank" rel="noopener" class="btn btn-primary">
|
| 2078 |
+
Open Fullscreen <span class="arrow">↗</span>
|
| 2079 |
+
</a>
|
| 2080 |
+
<a href="https://huggingface.co/spaces/FINAL-Bench/model-galaxy" target="_blank" rel="noopener" class="btn">
|
| 2081 |
+
전체 HF Galaxy (22,400+) <span class="arrow">↗</span>
|
| 2082 |
</a>
|
| 2083 |
+
<span class="hero-2-hint">갤럭시 로딩에 3–8초 소요 (Darwin 데이터 33KB)</span>
|
| 2084 |
+
<span class="hero-2-meta">Darwin Family Centered · sigma.js · FINAL-Bench / model-galaxy</span>
|
| 2085 |
</div>
|
| 2086 |
</div>
|
| 2087 |
</section>
|
|
|
|
| 3028 |
</div>
|
| 3029 |
</footer>
|
| 3030 |
|
| 3031 |
+
<!-- DARWIN GALAXY POPUP MODAL (전체화면 인터랙티브) -->
|
| 3032 |
+
<button id="galaxyFab" class="galaxy-fab" type="button" aria-label="Open Darwin Galaxy fullscreen">
|
| 3033 |
+
Darwin Galaxy 풀스크린
|
| 3034 |
+
<span class="arrow" aria-hidden="true">↗</span>
|
| 3035 |
+
</button>
|
| 3036 |
+
|
| 3037 |
+
<div id="galaxyModal" class="galaxy-modal" role="dialog" aria-modal="true" aria-labelledby="galaxyModalTitle">
|
| 3038 |
+
<div class="galaxy-modal-inner">
|
| 3039 |
+
<div class="galaxy-modal-header">
|
| 3040 |
+
<div id="galaxyModalTitle" class="galaxy-modal-title">Darwin Galaxy — VIDRAFT 중심 인터랙티브 가시화</div>
|
| 3041 |
+
<button id="galaxyModalClose" class="galaxy-modal-close" type="button" aria-label="Close">닫기 ✕</button>
|
| 3042 |
+
</div>
|
| 3043 |
+
<iframe id="galaxyModalIframe" class="galaxy-modal-iframe"
|
| 3044 |
+
title="Darwin Galaxy Fullscreen"
|
| 3045 |
+
allow="fullscreen"
|
| 3046 |
+
referrerpolicy="no-referrer"
|
| 3047 |
+
src="about:blank"></iframe>
|
| 3048 |
+
</div>
|
| 3049 |
+
</div>
|
| 3050 |
+
|
| 3051 |
+
<script>
|
| 3052 |
+
// Galaxy modal — open/close (lazy-load iframe on open to save bandwidth)
|
| 3053 |
+
(function(){
|
| 3054 |
+
const fab = document.getElementById('galaxyFab');
|
| 3055 |
+
const modal = document.getElementById('galaxyModal');
|
| 3056 |
+
const closeBtn = document.getElementById('galaxyModalClose');
|
| 3057 |
+
const frame = document.getElementById('galaxyModalIframe');
|
| 3058 |
+
if (!fab || !modal || !closeBtn || !frame) return;
|
| 3059 |
+
|
| 3060 |
+
const galaxyUrl = "https://final-bench-model-galaxy.hf.space/?config=config_darwin.json";
|
| 3061 |
+
|
| 3062 |
+
function openModal() {
|
| 3063 |
+
if (frame.src === "about:blank") frame.src = galaxyUrl;
|
| 3064 |
+
modal.classList.add('open');
|
| 3065 |
+
document.body.style.overflow = 'hidden';
|
| 3066 |
+
}
|
| 3067 |
+
function closeModal() {
|
| 3068 |
+
modal.classList.remove('open');
|
| 3069 |
+
document.body.style.overflow = '';
|
| 3070 |
+
}
|
| 3071 |
+
|
| 3072 |
+
fab.addEventListener('click', openModal);
|
| 3073 |
+
closeBtn.addEventListener('click', closeModal);
|
| 3074 |
+
modal.addEventListener('click', function(e){
|
| 3075 |
+
if (e.target === modal) closeModal();
|
| 3076 |
+
});
|
| 3077 |
+
document.addEventListener('keydown', function(e){
|
| 3078 |
+
if (e.key === 'Escape' && modal.classList.contains('open')) closeModal();
|
| 3079 |
+
});
|
| 3080 |
+
})();
|
| 3081 |
+
</script>
|
| 3082 |
+
|
| 3083 |
<script>
|
| 3084 |
// Hero video sequential playlist (VD1.mp4 → VD2.mp4 → 무한 loop)
|
| 3085 |
// + case-insensitive fallback (HF는 case-sensitive — vd2.mp4 / VD2.mp4 양쪽 자동 시도)
|