|
6 | 6 | <title>Orbit™ Project | DevLabStudy</title> |
7 | 7 | <link rel="icon" type="image/jpeg" href="/profileIcon_g3ffyg7edeeg1.jpeg"> |
8 | 8 | <style> |
9 | | - :root { |
10 | | - --bg-body: #050505; --bg-nav: rgba(5, 5, 5, 0.7); --bg-card: #111; |
11 | | - --text-main: #f8fafc; --text-muted: #94a3b8; --border-color: rgba(255, 255, 255, 0.1); |
12 | | - --accent-purple: #8b5cf6; |
13 | | - } |
| 9 | + :root { --bg-body: #050505; --bg-nav: rgba(5, 5, 5, 0.85); --bg-card: #111; --text-main: #f8fafc; --text-muted: #94a3b8; --border-color: rgba(255, 255, 255, 0.1); --accent-purple: #8b5cf6; } |
14 | 10 | body { font-family: 'Inter', sans-serif; background: var(--bg-body); color: var(--text-main); margin: 0; line-height: 1.6; } |
15 | 11 |
|
16 | | - /* PERFEKCYJNY NAVBAR */ |
17 | | - .navbar { background: var(--bg-nav); backdrop-filter: blur(15px); border-bottom: 1px solid var(--border-color); padding: 15px 40px; display: flex; align-items: center; justify-content: space-between; position: sticky; top: 0; z-index: 100; } |
18 | | - .nav-left { flex: 1; display: flex; justify-content: flex-start; } |
| 12 | + /* IDENTYCZNY NAVBAR */ |
| 13 | + .navbar { position: sticky; top: 0; z-index: 100; background: var(--bg-nav); backdrop-filter: blur(15px); border-bottom: 1px solid var(--border-color); padding: 15px 40px; display: flex; align-items: center; justify-content: space-between; } |
| 14 | + .nav-left { display: flex; align-items: center; gap: 30px; } |
19 | 15 | .nav-brand { font-size: 1.5rem; font-weight: 800; text-decoration: none; color: var(--text-main); letter-spacing: -0.5px; } |
20 | | - .nav-center { flex: 2; display: flex; justify-content: center; gap: 30px; } |
21 | | - .nav-center a { text-decoration: none; color: var(--text-muted); font-weight: 600; font-size: 0.95rem; transition: color 0.3s; } |
22 | | - .nav-center a:hover, .nav-center a.active { color: var(--accent-purple); } |
23 | | - .nav-right { flex: 1; display: flex; justify-content: flex-end; } |
24 | 16 | .dropdown { position: relative; display: inline-block; padding: 10px 0; } |
25 | | - .dropbtn { color: var(--text-muted); font-weight: 600; font-size: 0.95rem; transition: 0.3s; cursor: pointer; } |
26 | | - .dropdown:hover .dropbtn { color: var(--text-main); } |
27 | | - .dropdown-content { display: none; position: absolute; right: 0; top: 100%; background-color: #111; min-width: 180px; box-shadow: 0 10px 40px rgba(0,0,0,0.8); border-radius: 12px; border: 1px solid var(--border-color); overflow: hidden; z-index: 1; opacity: 0; transform: translateY(-10px); transition: all 0.3s ease; } |
| 17 | + .dropbtn { color: var(--text-main); font-weight: 700; font-size: 0.95rem; cursor: pointer; background: rgba(255,255,255,0.1); padding: 8px 16px; border-radius: 8px; border: 1px solid var(--border-color); transition: 0.3s; } |
| 18 | + .dropdown:hover .dropbtn { background: rgba(255,255,255,0.2); } |
| 19 | + .dropdown-content { display: none; position: absolute; left: 0; top: 100%; background-color: #111; min-width: 180px; box-shadow: 0 10px 40px rgba(0,0,0,0.8); border-radius: 12px; border: 1px solid var(--border-color); overflow: hidden; z-index: 1; opacity: 0; transform: translateY(-10px); transition: all 0.3s ease; } |
28 | 20 | .dropdown:hover .dropdown-content { display: block; opacity: 1; transform: translateY(0); } |
29 | 21 | .dropdown-content a { color: var(--text-main) !important; padding: 12px 20px; text-decoration: none; display: flex; justify-content: space-between; font-size: 0.9rem; font-weight: 600; border-bottom: 1px solid var(--border-color); transition: background 0.2s; } |
30 | | - .dropdown-content a:last-child { border-bottom: none; } |
31 | | - .dropdown-content a:hover { background: rgba(255,255,255,0.05); padding-left: 25px; } |
| 22 | + .dropdown-content a:hover { background: rgba(255,255,255,0.1); padding-left: 25px; } |
| 23 | + .nav-right { display: flex; align-items: center; gap: 25px; } |
| 24 | + .nav-right a { text-decoration: none; color: var(--text-muted); font-weight: 600; font-size: 0.95rem; transition: color 0.3s; } |
| 25 | + .nav-right a:hover, .nav-right a.active { color: var(--accent-purple); } |
32 | 26 |
|
33 | 27 | .container { max-width: 900px; margin: 60px auto; padding: 0 20px; } |
34 | | - .hero { text-align: center; margin-bottom: 60px; } |
| 28 | + .hero { text-align: center; margin-bottom: 50px; } |
35 | 29 | .hero h1 { font-size: 3.5rem; margin-bottom: 15px; letter-spacing: -2px; } |
36 | | - |
37 | 30 | .card { background: var(--bg-card); border: 1px solid var(--border-color); padding: 40px; border-radius: 24px; margin-bottom: 30px; } |
38 | 31 | .card h2 { color: var(--accent-purple); border-bottom: 1px solid rgba(139, 92, 246, 0.2); padding-bottom: 10px; margin-bottom: 20px; } |
39 | 32 |
|
40 | | - .tech-stack { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; } |
41 | | - .tech-tag { background: rgba(139, 92, 246, 0.1); color: var(--accent-purple); padding: 8px 18px; border-radius: 12px; font-size: 0.85rem; font-weight: 700; border: 1px solid rgba(139, 92, 246, 0.3); } |
42 | | - |
43 | | - .btn-github { display: inline-block; background: var(--accent-purple); color: white; text-decoration: none; padding: 15px 30px; border-radius: 12px; font-weight: 700; margin-top: 30px; transition: 0.3s; box-shadow: 0 4px 15px rgba(139, 92, 246, 0.4); text-align: center; font-size: 1.1rem; } |
| 33 | + .btn-github { display: inline-block; background: var(--accent-purple); color: white; text-decoration: none; padding: 15px 30px; border-radius: 12px; font-weight: 700; margin-top: 15px; transition: 0.3s; box-shadow: 0 4px 15px rgba(139, 92, 246, 0.4); text-align: center; font-size: 1.1rem; } |
44 | 34 | .btn-github:hover { transform: translateY(-3px); box-shadow: 0 8px 25px rgba(139, 92, 246, 0.6); } |
45 | 35 |
|
46 | | - @media (max-width: 768px) { .navbar { flex-direction: column; padding: 15px; gap: 15px; } .nav-left, .nav-center, .nav-right { justify-content: center; width: 100%; } .nav-center { flex-wrap: wrap; } } |
| 36 | + @media (max-width: 768px) { .navbar { flex-direction: column; gap: 15px; } .nav-left, .nav-right { justify-content: center; width: 100%; flex-wrap: wrap; } } |
47 | 37 | </style> |
48 | 38 | </head> |
49 | 39 | <body> |
50 | 40 | <nav class="navbar"> |
51 | | - <div class="nav-left"><a href="/" class="nav-brand">DevLabStudy</a></div> |
52 | | - <div class="nav-center"> |
53 | | - <a href="/">Hub</a> |
54 | | - <a href="/blog">Blog</a> |
55 | | - <a href="/homelab">HomeLab</a> |
56 | | - <a href="/orbit" class="active">Orbit™</a> |
57 | | - </div> |
58 | | - <div class="nav-right"> |
| 41 | + <div class="nav-left"> |
| 42 | + <a href="/" class="nav-brand">DevLabStudy</a> |
59 | 43 | <div class="dropdown"> |
60 | | - <span class="dropbtn">Community</span> |
| 44 | + <span class="dropbtn">Community ▾</span> |
61 | 45 | <div class="dropdown-content"> |
62 | 46 | <a href="https://github.com/DevLabStudy">GitHub <span>↗</span></a> |
63 | 47 | <a href="https://www.youtube.com/@devlabstudy">YouTube <span>↗</span></a> |
|
67 | 51 | </div> |
68 | 52 | </div> |
69 | 53 | </div> |
| 54 | + <div class="nav-right"> |
| 55 | + <a href="/">Hub</a> |
| 56 | + <a href="/blog">Blog</a> |
| 57 | + <a href="/homelab">HomeLab</a> |
| 58 | + <a href="/orbit" class="active">Orbit™</a> |
| 59 | + </div> |
70 | 60 | </nav> |
71 | 61 |
|
72 | 62 | <main class="container"> |
73 | 63 | <div class="hero"> |
74 | 64 | <h1>Orbit™ Project</h1> |
75 | | - <p style="font-size: 1.25rem; color: var(--text-muted); max-width: 600px; margin: 0 auto;">Lightweight, distributed container orchestration designed for the edge.</p> |
| 65 | + <p style="font-size: 1.25rem; color: var(--text-muted); max-width: 600px; margin: 0 auto;">Zarządzanie, optymalizacja i nowa jakość w architekturze środowisk kontenerowych.</p> |
| 66 | + </div> |
| 67 | + |
| 68 | + <div class="card" style="text-align: center;"> |
| 69 | + <h2>Project Repository</h2> |
| 70 | + <p style="color: var(--text-muted);">Kod źródłowy, pliki konfiguracyjne i skrypty infrastruktury są otwarte.</p> |
| 71 | + <a href="https://github.com/DevLabStudy/orbit" class="btn-github">View Orbit™ on GitHub</a> |
| 72 | + </div> |
| 73 | + |
| 74 | + <div class="card"> |
| 75 | + <h2>Skąd wziął się pomysł? (Origin Story)</h2> |
| 76 | + <p>Projekt Orbit narodził się z rzeczywistej potrzeby zarządzania rozbudowanym środowiskiem HomeLab, składającym się z wielu różnorodnych węzłów (od starszych laptopów po instancje chmurowe VPS). Standardowe narzędzia były albo zbyt "ciężkie", albo nie spełniały wszystkich wymagań.</p> |
| 77 | + <p>Głównym założeniem było stworzenie środowiska, które będzie natywnie opierać się na ultra-zoptymalizowanych obrazach Docker, minimalizując zużycie zasobów do niezbędnego minimum.</p> |
| 78 | + </div> |
| 79 | + |
| 80 | + <div class="card"> |
| 81 | + <h2>Roadmapa / Plany na przyszłość</h2> |
| 82 | + <ul> |
| 83 | + <li style="margin-bottom: 10px;"><strong>Faza 1:</strong> Optymalizacja i odchudzanie bazowych obrazów Docker.</li> |
| 84 | + <li style="margin-bottom: 10px;"><strong>Faza 2:</strong> Zbudowanie stabilnej architektury rozproszonej pomiędzy węzłem w chmurze a lokalnym HomeLabem.</li> |
| 85 | + <li style="margin-bottom: 10px;"><strong>Faza 3:</strong> Automatyzacja wdrażania za pomocą dedykowanych skryptów.</li> |
| 86 | + </ul> |
76 | 87 | </div> |
77 | | - </main> |
| 88 | + </main> |
78 | 89 | </body> |
79 | 90 | </html> |
0 commit comments