arepaconcafe commited on
Commit
99d433c
verified
1 Parent(s): aee31a9

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +75 -108
index.html CHANGED
@@ -6,6 +6,7 @@
6
  <title>Neko-Void | Void Linux Respin</title>
7
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
8
  <style>
 
9
  :root {
10
  --bg-color: #282a36;
11
  --current-line: #44475a;
@@ -29,11 +30,14 @@
29
  font-family: 'Inter', sans-serif;
30
  line-height: 1.6;
31
  display: flex;
 
 
 
 
32
  }
33
 
34
  h1, h2, h3 { font-family: 'Arthur Matilde', 'Inter', sans-serif; font-weight: 700; }
35
 
36
- /* --- SIDEBAR --- */
37
  .sidebar {
38
  width: var(--sidebar-width);
39
  height: 100vh;
@@ -48,121 +52,48 @@
48
  z-index: 1000;
49
  }
50
 
51
- .sidebar-brand {
52
- display: flex;
53
- flex-direction: column;
54
- align-items: center;
55
- margin-bottom: 50px;
56
- text-decoration: none;
57
- }
58
-
59
- .sidebar-logo-img {
60
- width: 60px;
61
- height: auto;
62
- margin-bottom: 15px;
63
- }
64
-
65
- .sidebar-brand span {
66
- color: var(--green);
67
- font-size: 1.2rem;
68
- font-family: 'Fira Code', monospace;
69
- font-weight: bold;
70
- }
71
 
72
  .nav-links { list-style: none; flex-grow: 1; }
73
- .nav-link {
74
- display: flex;
75
- align-items: center;
76
- gap: 12px;
77
- color: var(--comment);
78
- text-decoration: none;
79
- padding: 12px 15px;
80
- border-radius: 8px;
81
- font-family: 'Fira Code', monospace;
82
- font-size: 0.9rem;
83
- transition: var(--transition);
84
- }
85
-
86
- .nav-link:hover, .nav-link.active {
87
- background: var(--current-line);
88
- color: var(--green);
89
- }
90
-
91
- /* --- MAIN CONTENT --- */
92
- main {
93
- margin-left: var(--sidebar-width);
94
- width: calc(100% - var(--sidebar-width));
95
- }
96
 
 
97
  .container { max-width: 1000px; margin: 0 auto; padding: 80px 40px; }
98
 
99
- /* --- HERO --- */
100
- .hero {
101
- min-height: 100vh;
102
- display: flex;
103
- flex-direction: column;
104
- justify-content: center;
105
- align-items: center;
106
- text-align: center;
107
- background: radial-gradient(circle at top, #383a59 0%, var(--bg-color) 80%);
108
- padding: 60px 20px;
109
- }
110
-
111
- .main-logo {
112
- width: 180px;
113
- height: auto;
114
- margin-bottom: 30px;
115
- filter: drop-shadow(0 0 15px rgba(80, 250, 123, 0.3));
116
- }
117
-
118
  .hero h1 { font-size: clamp(3rem, 8vw, 5.5rem); color: var(--green); margin-bottom: 20px; }
119
 
120
  .project-links { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-bottom: 40px; }
121
- .btn-link {
122
- color: var(--comment); text-decoration: none; font-family: 'Fira Code', monospace;
123
- font-size: 0.8rem; padding: 6px 14px; background: rgba(0,0,0,0.2);
124
- border-radius: 6px; border: 1px solid var(--selection); transition: var(--transition);
125
- }
126
  .btn-link:hover { color: var(--cyan); border-color: var(--cyan); }
127
 
128
- /* --- TABS --- */
129
  .tabs-wrapper { background: var(--current-line); border-radius: 12px; overflow: hidden; margin-bottom: 60px; border: 1px solid var(--selection); }
130
  .tabs-header { display: flex; background: rgba(0,0,0,0.3); }
131
- .tab-btn {
132
- flex: 1; padding: 18px; border: none; background: none; color: var(--comment);
133
- font-family: 'Fira Code', monospace; cursor: pointer; transition: var(--transition);
134
- font-size: 0.9rem;
135
- }
136
  .tab-btn.active { color: var(--green); background: rgba(80, 250, 123, 0.05); border-bottom: 2px solid var(--green); }
137
 
138
  .tab-content { display: none; padding: 40px; animation: fadeIn 0.4s ease; }
139
  .tab-content.active { display: block; }
140
-
141
  @keyframes fadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
142
 
143
- /* --- GALLERY --- */
144
  .gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin-top: 40px; }
145
- .gallery-item img { width: 100%; border-radius: 8px; border: 1px solid var(--selection); display: block; transition: var(--transition); }
146
  .gallery-item:hover img { border-color: var(--green); }
147
 
148
- /* --- DOWNLOADS --- */
149
  .download-cta { background: #1a1b26; padding: 80px 40px; text-align: center; border-radius: 20px; margin: 40px 0; border: 1px solid var(--selection); }
150
  .download-group { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; margin-top: 35px; }
151
- .btn-main {
152
- padding: 16px 35px; border-radius: 10px; font-weight: 700; text-decoration: none;
153
- transition: var(--transition); display: flex; align-items: center; gap: 10px; font-size: 1.05rem;
154
- }
155
  .btn-primary { background: var(--green); color: var(--bg-color); }
156
  .btn-outline { border: 2px solid var(--purple); color: var(--purple); }
157
  .btn-main:hover { transform: translateY(-4px); box-shadow: 0 10px 20px rgba(0,0,0,0.4); }
158
 
159
- /* --- RESPONSIVE --- */
160
  @media (max-width: 992px) {
161
  body { flex-direction: column; }
162
- .sidebar {
163
- width: 100%; height: auto; position: sticky; padding: 15px 25px;
164
- flex-direction: row; align-items: center; justify-content: space-between;
165
- }
166
  .sidebar-brand { margin-bottom: 0; flex-direction: row; gap: 10px; }
167
  .sidebar-logo-img { width: 35px; margin-bottom: 0; }
168
  .nav-links { display: flex; gap: 10px; }
@@ -177,33 +108,33 @@
177
  }
178
  </style>
179
  </head>
180
- <body>
181
 
182
  <nav class="sidebar">
183
- <a href="#inicio" class="sidebar-brand">
184
- <img src="logo.png" alt="Logo Neko-Void" class="sidebar-logo-img">
185
  <span>NEKO_VOID</span>
186
- </a>
187
  <ul class="nav-links">
188
- <li class="nav-item"><a href="#inicio" class="nav-link active"><span>01</span> Inicio</a></li>
189
- <li class="nav-item"><a href="#detalles" class="nav-link"><span>02</span> Detalles</a></li>
190
- <li class="nav-item"><a href="#galeria" class="nav-link"><span>03</span> Galer铆a</a></li>
191
- <li class="nav-item"><a href="#descargas" class="nav-link"><span>04</span> Descargas</a></li>
192
  </ul>
193
- <div style="font-size: 0.7rem; color: var(--comment); text-align: center; margin-top: 20px;">
194
- v. Beta 4
195
  </div>
196
  </nav>
197
 
198
  <main>
199
  <section id="inicio" class="hero">
200
- <img src="logo.png" alt="Neko-Void Logo" class="main-logo">
201
  <span>&lt;respin_void_linux /&gt;</span>
202
  <h1>NEKO VOID</h1>
203
  <div class="project-links">
204
- <a href="https://sourceforge.net/projects/neko-void/" class="btn-link" target="_blank">SourceForge</a>
205
- <a href="https://codeberg.org/javiercplus/Neko-Void" class="btn-link" target="_blank">Codeberg</a>
206
- <a href="https://codeberg.org/javiercplus/Kasha-Installer" class="btn-link" target="_blank">Kasha Installer</a>
207
  </div>
208
  </section>
209
 
@@ -233,10 +164,10 @@
233
  <section id="galeria" class="container">
234
  <h2 style="color: var(--pink); text-align: center; margin-bottom: 40px;">Capturas</h2>
235
  <div class="gallery-grid">
236
- <div class="gallery-item"><img src="./1.png" alt="Desktop View"></div>
237
- <div class="gallery-item"><img src="./2.png" alt="Terminal View"></div>
238
- <div class="gallery-item"><img src="./3.png" alt="Menu View"></div>
239
- <div class="gallery-item"><img src="./4.png" alt="Gaming View"></div>
240
  </div>
241
  </section>
242
 
@@ -244,8 +175,8 @@
244
  <div class="download-cta">
245
  <h2 style="color: var(--green);">Descarga Neko-Void</h2>
246
  <div class="download-group">
247
- <a href="https://sourceforge.net/projects/neko-void/files/isos/nekovoid-beta-4-xorg.iso/download" class="btn-main btn-primary">Edici贸n Xorg</a>
248
- <a href="https://sourceforge.net/projects/neko-void/files/isos/nekovoid-beta-4-xlibre.iso/download" class="btn-main btn-outline">Edici贸n XLibre</a>
249
  </div>
250
  </div>
251
  </section>
@@ -266,6 +197,40 @@
266
  evt.currentTarget.classList.add("active");
267
  }
268
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
269
  window.addEventListener('scroll', () => {
270
  let current = '';
271
  const sections = document.querySelectorAll('section');
@@ -278,11 +243,13 @@
278
 
279
  document.querySelectorAll('.nav-link').forEach(link => {
280
  link.classList.remove('active');
281
- if (link.getAttribute('href').includes(current)) {
282
  link.classList.add('active');
283
  }
284
  });
285
  });
 
 
286
  </script>
287
  </body>
288
  </html>
 
6
  <title>Neko-Void | Void Linux Respin</title>
7
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
8
  <style>
9
+ /* --- DISE脩O INTEGRADO --- */
10
  :root {
11
  --bg-color: #282a36;
12
  --current-line: #44475a;
 
30
  font-family: 'Inter', sans-serif;
31
  line-height: 1.6;
32
  display: flex;
33
+ -webkit-user-select: none;
34
+ -moz-user-select: none;
35
+ -ms-user-select: none;
36
+ user-select: none;
37
  }
38
 
39
  h1, h2, h3 { font-family: 'Arthur Matilde', 'Inter', sans-serif; font-weight: 700; }
40
 
 
41
  .sidebar {
42
  width: var(--sidebar-width);
43
  height: 100vh;
 
52
  z-index: 1000;
53
  }
54
 
55
+ .sidebar-brand { display: flex; flex-direction: column; align-items: center; margin-bottom: 50px; text-decoration: none; cursor: pointer; }
56
+ .sidebar-logo-img { width: 60px; height: auto; margin-bottom: 15px; }
57
+ .sidebar-brand span { color: var(--green); font-size: 1.2rem; font-family: 'Fira Code', monospace; font-weight: bold; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
 
59
  .nav-links { list-style: none; flex-grow: 1; }
60
+ .nav-link { display: flex; align-items: center; gap: 12px; color: var(--comment); text-decoration: none; padding: 12px 15px; border-radius: 8px; font-family: 'Fira Code', monospace; font-size: 0.9rem; transition: var(--transition); cursor: pointer; }
61
+ .nav-link:hover, .nav-link.active { background: var(--current-line); color: var(--green); }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
 
63
+ main { margin-left: var(--sidebar-width); width: calc(100% - var(--sidebar-width)); }
64
  .container { max-width: 1000px; margin: 0 auto; padding: 80px 40px; }
65
 
66
+ .hero { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: radial-gradient(circle at top, #383a59 0%, var(--bg-color) 80%); padding: 60px 20px; }
67
+ .main-logo { width: 180px; height: auto; margin-bottom: 30px; filter: drop-shadow(0 0 15px rgba(80, 250, 123, 0.3)); }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
68
  .hero h1 { font-size: clamp(3rem, 8vw, 5.5rem); color: var(--green); margin-bottom: 20px; }
69
 
70
  .project-links { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-bottom: 40px; }
71
+ .btn-link { color: var(--comment); text-decoration: none; font-family: 'Fira Code', monospace; font-size: 0.8rem; padding: 6px 14px; background: rgba(0,0,0,0.2); border-radius: 6px; border: 1px solid var(--selection); transition: var(--transition); cursor: pointer; }
 
 
 
 
72
  .btn-link:hover { color: var(--cyan); border-color: var(--cyan); }
73
 
 
74
  .tabs-wrapper { background: var(--current-line); border-radius: 12px; overflow: hidden; margin-bottom: 60px; border: 1px solid var(--selection); }
75
  .tabs-header { display: flex; background: rgba(0,0,0,0.3); }
76
+ .tab-btn { flex: 1; padding: 18px; border: none; background: none; color: var(--comment); font-family: 'Fira Code', monospace; cursor: pointer; transition: var(--transition); font-size: 0.9rem; }
 
 
 
 
77
  .tab-btn.active { color: var(--green); background: rgba(80, 250, 123, 0.05); border-bottom: 2px solid var(--green); }
78
 
79
  .tab-content { display: none; padding: 40px; animation: fadeIn 0.4s ease; }
80
  .tab-content.active { display: block; }
 
81
  @keyframes fadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
82
 
 
83
  .gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin-top: 40px; }
84
+ .gallery-item img { width: 100%; border-radius: 8px; border: 1px solid var(--selection); display: block; transition: var(--transition); pointer-events: none; }
85
  .gallery-item:hover img { border-color: var(--green); }
86
 
 
87
  .download-cta { background: #1a1b26; padding: 80px 40px; text-align: center; border-radius: 20px; margin: 40px 0; border: 1px solid var(--selection); }
88
  .download-group { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; margin-top: 35px; }
89
+ .btn-main { padding: 16px 35px; border-radius: 10px; font-weight: 700; transition: var(--transition); display: flex; align-items: center; gap: 10px; font-size: 1.05rem; cursor: pointer; }
 
 
 
90
  .btn-primary { background: var(--green); color: var(--bg-color); }
91
  .btn-outline { border: 2px solid var(--purple); color: var(--purple); }
92
  .btn-main:hover { transform: translateY(-4px); box-shadow: 0 10px 20px rgba(0,0,0,0.4); }
93
 
 
94
  @media (max-width: 992px) {
95
  body { flex-direction: column; }
96
+ .sidebar { width: 100%; height: auto; position: sticky; padding: 15px 25px; flex-direction: row; align-items: center; justify-content: space-between; }
 
 
 
97
  .sidebar-brand { margin-bottom: 0; flex-direction: row; gap: 10px; }
98
  .sidebar-logo-img { width: 35px; margin-bottom: 0; }
99
  .nav-links { display: flex; gap: 10px; }
 
108
  }
109
  </style>
110
  </head>
111
+ <body oncontextmenu="return false;">
112
 
113
  <nav class="sidebar">
114
+ <span onclick="window.location.href='#inicio'" class="sidebar-brand">
115
+ <img src="https://huggingface.co/arepaconcafe/neko-base/resolve/main/logo.png" alt="Logo Neko-Void" class="sidebar-logo-img">
116
  <span>NEKO_VOID</span>
117
+ </span>
118
  <ul class="nav-links">
119
+ <li class="nav-item"><span onclick="window.location.href='#inicio'" class="nav-link active" data-target="inicio"><span>01</span> Inicio</span></li>
120
+ <li class="nav-item"><span onclick="window.location.href='#detalles'" class="nav-link" data-target="detalles"><span>02</span> Detalles</span></li>
121
+ <li class="nav-item"><span onclick="window.location.href='#galeria'" class="nav-link" data-target="galeria"><span>03</span> Galer铆a</span></li>
122
+ <li class="nav-item"><span onclick="window.location.href='#descargas'" class="nav-link" data-target="descargas"><span>04</span> Descargas</span></li>
123
  </ul>
124
+ <div id="version-tag" style="font-size: 0.7rem; color: var(--comment); text-align: center; margin-top: 20px;">
125
+ Cargando versi贸n...
126
  </div>
127
  </nav>
128
 
129
  <main>
130
  <section id="inicio" class="hero">
131
+ <img src="https://huggingface.co/arepaconcafe/neko-base/resolve/main/logo.png" alt="Neko-Void Logo" class="main-logo">
132
  <span>&lt;respin_void_linux /&gt;</span>
133
  <h1>NEKO VOID</h1>
134
  <div class="project-links">
135
+ <span class="btn-link" onclick="window.open('https://sourceforge.net/projects/neko-void/', '_blank')">SourceForge</span>
136
+ <span class="btn-link" onclick="window.open('https://codeberg.org/javiercplus/Neko-Void', '_blank')">Codeberg</span>
137
+ <span class="btn-link" onclick="window.open('https://codeberg.org/javiercplus/Kasha-Installer', '_blank')">Kasha Installer</span>
138
  </div>
139
  </section>
140
 
 
164
  <section id="galeria" class="container">
165
  <h2 style="color: var(--pink); text-align: center; margin-bottom: 40px;">Capturas</h2>
166
  <div class="gallery-grid">
167
+ <div class="gallery-item"><img src="https://huggingface.co/arepaconcafe/neko-base/resolve/main/1.png" alt="Desktop View"></div>
168
+ <div class="gallery-item"><img src="https://huggingface.co/arepaconcafe/neko-base/resolve/main/2.png" alt="Terminal View"></div>
169
+ <div class="gallery-item"><img src="https://huggingface.co/arepaconcafe/neko-base/resolve/main/3.png" alt="Menu View"></div>
170
+ <div class="gallery-item"><img src="https://huggingface.co/arepaconcafe/neko-base/resolve/main/4.png" alt="Gaming View"></div>
171
  </div>
172
  </section>
173
 
 
175
  <div class="download-cta">
176
  <h2 style="color: var(--green);">Descarga Neko-Void</h2>
177
  <div class="download-group">
178
+ <span id="link-xorg" class="btn-main btn-primary">Edici贸n Xorg</span>
179
+ <span id="link-xlibre" class="btn-main btn-outline">Edici贸n XLibre</span>
180
  </div>
181
  </div>
182
  </section>
 
197
  evt.currentTarget.classList.add("active");
198
  }
199
 
200
+ async function loadDownloadsFromXML() {
201
+ const xmlUrl = 'https://huggingface.co/arepaconcafe/neko-base/resolve/main/downloads.xml';
202
+ try {
203
+ const response = await fetch(xmlUrl);
204
+ if (!response.ok) throw new Error('No se pudo cargar el archivo XML');
205
+
206
+ const xmlText = await response.text();
207
+ const parser = new DOMParser();
208
+ const xmlDoc = parser.parseFromString(xmlText, "text/xml");
209
+
210
+ const release = xmlDoc.getElementsByTagName("release")[0];
211
+ if (release) {
212
+ const version = release.getAttribute("version");
213
+ document.getElementById('version-tag').textContent = `v. ${version}`;
214
+ }
215
+
216
+ const isos = xmlDoc.getElementsByTagName("iso");
217
+ for (let i = 0; i < isos.length; i++) {
218
+ const id = isos[i].getAttribute("id");
219
+ const url = isos[i].textContent.trim();
220
+
221
+ if (id === "link-xorg") {
222
+ document.getElementById('link-xorg').onclick = () => window.open(url, '_blank');
223
+ }
224
+ if (id === "link-xlibre") {
225
+ document.getElementById('link-xlibre').onclick = () => window.open(url, '_blank');
226
+ }
227
+ }
228
+ } catch (error) {
229
+ console.error("Error al sincronizar con Hugging Face:", error);
230
+ document.getElementById('version-tag').textContent = "Error de sincronizaci贸n";
231
+ }
232
+ }
233
+
234
  window.addEventListener('scroll', () => {
235
  let current = '';
236
  const sections = document.querySelectorAll('section');
 
243
 
244
  document.querySelectorAll('.nav-link').forEach(link => {
245
  link.classList.remove('active');
246
+ if (link.getAttribute('data-target') === current) {
247
  link.classList.add('active');
248
  }
249
  });
250
  });
251
+
252
+ window.onload = loadDownloadsFromXML;
253
  </script>
254
  </body>
255
  </html>