Moge-Row commited on
Commit
ebad9a2
·
1 Parent(s): 0b5a660

fix: absolute path stabilization for index.html

Browse files
Files changed (1) hide show
  1. static/index.html +71 -86
static/index.html CHANGED
@@ -1,92 +1,77 @@
1
  <!DOCTYPE html>
2
- <html lang="es">
3
  <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>ROW-PROXY // CCCP</title>
7
- <style>
8
- *{box-sizing:border-box;margin:0;padding:0}
9
- body{background:#0d0d0d;font-family:"Courier New",monospace;color:#c8a84b}
10
- .header{background:#1a1200;border-bottom:2px solid #c8a84b;padding:1.5rem 2rem;display:flex;align-items:center;gap:1rem}
11
- .star{color:#cc0000;font-size:28px}
12
- .header-title{font-size:22px;font-weight:bold;letter-spacing:4px;color:#c8a84b}
13
- .header-sub{font-size:11px;letter-spacing:3px;color:#7a6228;margin-top:2px}
14
- .red-bar{height:4px;background:#cc0000}
15
- .content{padding:2rem}
16
- .section-label{font-size:10px;letter-spacing:4px;color:#7a6228;border-bottom:1px solid #3a2a00;padding-bottom:6px;margin-bottom:1rem}
17
- .status-row{display:flex;gap:1rem;margin-bottom:2rem}
18
- .status-card{flex:1;background:#1a1200;border:1px solid #3a2a00;border-left:3px solid #c8a84b;padding:1rem}
19
- .status-card .val{font-size:18px;color:#c8a84b;font-weight:bold;margin-bottom:2px}
20
- .status-card .lbl{font-size:10px;color:#7a6228;letter-spacing:2px}
21
- .online{color:#44aa99}
22
- .url-box{background:#111;border:1px solid #3a2a00;border-left:3px solid #cc0000;padding:1rem 1.25rem;margin-bottom:2rem}
23
- .url-label{font-size:10px;color:#7a6228;letter-spacing:3px;margin-bottom:6px}
24
- .url-val{font-size:13px;color:#e8c86b;word-break:break-all}
25
- .key-val{font-size:12px;color:#c8a84b;margin-top:4px}
26
- .models-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:2rem}
27
- .model-item{background:#1a1200;border:1px solid #2a1e00;padding:8px 12px;display:flex;align-items:center;gap:8px}
28
- .model-dot{width:6px;height:6px;background:#44aa99;border-radius:50%;flex-shrink:0}
29
- .model-dot.glm{background:#c8a84b}
30
- .model-name{font-size:11px;color:#c8a84b}
31
- .tank-section{background:#1a1200;border:1px solid #3a2a00;padding:1.5rem;margin-bottom:2rem}
32
- .tank-title{font-size:14px;color:#cc0000;letter-spacing:3px;margin-bottom:1rem;font-weight:bold}
33
- .tank-row{display:flex;gap:1rem;margin-bottom:8px;align-items:center}
34
- .tank-name{font-size:12px;color:#e8c86b;width:80px;flex-shrink:0}
35
- .tank-bar-wrap{flex:1;background:#0d0d0d;height:16px}
36
- .tank-bar{height:100%;background:#cc0000}
37
- .tank-era{font-size:10px;color:#7a6228;width:80px;text-align:right}
38
- .footer{border-top:1px solid #3a2a00;padding:1rem 2rem;text-align:center;font-size:10px;color:#4a3a10;letter-spacing:3px}
39
- .classified{color:#cc0000}
40
- </style>
41
  </head>
42
  <body>
43
- <div class="header">
44
- <div class="star">&#9733;</div>
45
- <div>
46
- <div class="header-title">ROW-PROXY // CCCP</div>
47
- <div class="header-sub">SOVIET ARMORED DIVISION AI GATEWAY SYSTEM — 1960-1985</div>
48
- </div>
49
- <div style="margin-left:auto;text-align:right">
50
- <div style="font-size:10px;color:#44aa99;letter-spacing:2px">&#9679; SISTEMA ACTIVO</div>
51
- <div style="font-size:10px;color:#7a6228;margin-top:2px">HUGGING FACE DEPLOY</div>
52
- </div>
53
- </div>
54
- <div class="red-bar"></div>
55
- <div class="content">
56
- <div class="section-label">// ESTADO DEL SISTEMA</div>
57
- <div class="status-row">
58
- <div class="status-card"><div class="val online">&#9679; ONLINE</div><div class="lbl">PROXY STATUS</div></div>
59
- <div class="status-card"><div class="val">24</div><div class="lbl">MODELOS ACTIVOS</div></div>
60
- <div class="status-card"><div class="val">FREE</div><div class="lbl">API KEY</div></div>
61
- </div>
62
- <div class="section-label">// PUNTO DE ACCESO</div>
63
- <div class="url-box">
64
- <div class="url-label">BASE URL — PRODUCCION</div>
65
- <div class="url-val">https://moge-row-row-proxy.hf.space/v1</div>
66
- <div class="key-val">API KEY: free</div>
67
- </div>
68
- <div class="section-label">// MODELOS DISPONIBLES</div>
69
- <div class="models-grid">
70
- <div class="model-item"><div class="model-dot"></div><div class="model-name">claude-sonnet-4-6</div></div>
71
- <div class="model-item"><div class="model-dot"></div><div class="model-name">claude-haiku-4-5</div></div>
72
- <div class="model-item"><div class="model-dot"></div><div class="model-name">claude-opus-4-6</div></div>
73
- <div class="model-item"><div class="model-dot"></div><div class="model-name">claude-3-5-sonnet</div></div>
74
- <div class="model-item"><div class="model-dot glm"></div><div class="model-name">glm-4.7</div></div>
75
- <div class="model-item"><div class="model-dot glm"></div><div class="model-name">glm-4.7-thinking</div></div>
76
- <div class="model-item"><div class="model-dot glm"></div><div class="model-name">glm-5</div></div>
77
- <div class="model-item"><div class="model-dot glm"></div><div class="model-name">glm-5-thinking</div></div>
78
- </div>
79
- <div class="section-label">// RAMA SOVIETICA — GUERRA FRIA</div>
80
- <div class="tank-section">
81
- <div class="tank-title">&#9733; BLINDADOS SOVIETICOS 1960-1985</div>
82
- <div class="tank-row"><div class="tank-name">T-54/55</div><div class="tank-bar-wrap"><div class="tank-bar" style="width:70%"></div></div><div class="tank-era">1947-1958</div></div>
83
- <div class="tank-row"><div class="tank-name">T-62</div><div class="tank-bar-wrap"><div class="tank-bar" style="width:80%"></div></div><div class="tank-era">1961-1975</div></div>
84
- <div class="tank-row"><div class="tank-name">T-64A</div><div class="tank-bar-wrap"><div class="tank-bar" style="width:88%"></div></div><div class="tank-era">1967-1980</div></div>
85
- <div class="tank-row"><div class="tank-name">T-72</div><div class="tank-bar-wrap"><div class="tank-bar" style="width:95%"></div></div><div class="tank-era">1973-1990</div></div>
86
- <div class="tank-row"><div class="tank-name">T-80</div><div class="tank-bar-wrap"><div class="tank-bar" style="width:100%"></div></div><div class="tank-era">1976-1985</div></div>
87
- <div style="margin-top:1rem;font-size:10px;color:#7a6228;letter-spacing:1px">&#9888; INFORMACION CLASIFICADA — NIVEL: SECRETO MILITAR</div>
88
- </div>
89
- </div>
90
- <div class="footer"><span class="classified">&#9733; CLASIFICADO &#9733;</span> &mdash; ROW-PROXY v1.0 &mdash; CCCP AI GATEWAY &mdash; <span class="classified">&#9733; CLASIFICADO &#9733;</span></div>
 
 
91
  </body>
92
  </html>
 
1
  <!DOCTYPE html>
2
+ <html lang='es'>
3
  <head>
4
+ <meta charset='UTF-8'>
5
+ <title>ROW-PROXY // FRENTE ORIENTAL</title>
6
+ <style>
7
+ body { background: #0d0d0c; color: #d4d4d4; font-family: 'Courier New', monospace; padding: 20px; line-height: 1.2; }
8
+ .monitor { max-width: 1000px; margin: auto; }
9
+ .section-header { color: #7a6228; font-size: 12px; letter-spacing: 4px; margin: 20px 0 10px 0; border-bottom: 1px solid #2a2a1f; padding-bottom: 5px; }
10
+ .box { background: rgba(26, 18, 0, 0.4); border: 1px solid #3a2a00; padding: 25px; margin-bottom: 20px; position: relative; }
11
+ h2 { color: #ff3333; font-size: 14px; letter-spacing: 2px; margin-bottom: 20px; font-weight: bold; }
12
+ h2::before { content: '★ '; }
13
+
14
+ /* Estilo HOI4 Rankings */
15
+ .ranking-row { display: flex; align-items: center; gap: 15px; margin-bottom: 12px; }
16
+ .name { color: #daa520; width: 140px; font-size: 13px; font-weight: bold; flex-shrink: 0; text-transform: uppercase; }
17
+ .bar-container { flex-grow: 1; background: #080808; height: 16px; border: 1px solid #222; }
18
+ .bar { background: #cc0000; height: 100%; transition: width 0.8s ease-out; box-shadow: 0 0 10px rgba(204, 0, 0, 0.2); }
19
+ .tokens { color: #7a6228; width: 110px; text-align: right; font-size: 11px; font-weight: bold; }
20
+
21
+ .quote { border-left: 3px solid #ff3333; background: rgba(255, 0, 0, 0.03); padding: 15px; margin-top: 25px; font-style: italic; color: #888; font-size: 13px; }
22
+ .url-display { color: #e8c86b; font-size: 14px; border-left: 3px solid #cc0000; padding-left: 15px; margin-top: 10px; }
23
+ </style>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  </head>
25
  <body>
26
+ <div class='monitor'>
27
+ <div class='section-header'>// HOI4 - NO STEP BACK - MONITOREO DE COMANDANTES</div>
28
+
29
+ <div class='box'>
30
+ <h2>ESTADO DEL FRENTE ORIENTAL (USO DE TOKENS)</h2>
31
+ <div id='ranking-frente'>
32
+ <div style='color:#7a6228; text-align:center; padding:10px;'>ESTABLECIENDO CONEXIÓN CON EL SERVIDOR CENTRAL...</div>
33
+ </div>
34
+ </div>
35
+
36
+ <div class='quote'>
37
+ "La victoria es para aquellos que no retroceden. Ni un paso atras."<br>
38
+ Orden No. 227, Stalin — 1942 — NO STEP BACK
39
+ </div>
40
+
41
+ <div class='section-header'>// PUNTO DE ACCESO</div>
42
+ <div class='url-display'>
43
+ BASE URL: https://moge-row-row-proxy.hf.space/v1
44
+ </div>
45
+ </div>
46
+
47
+ <script>
48
+ async function updateStats() {
49
+ try {
50
+ const r = await fetch(window.location.origin + '/stats');
51
+ const data = await r.json();
52
+ const container = document.getElementById('ranking-frente');
53
+ const entries = Object.entries(data.keys || {}).map(([name, info]) => ({
54
+ name: name,
55
+ tokens: info.tokens || 0
56
+ })).sort((a, b) => b.tokens - a.tokens);
57
+
58
+ if (entries.length === 0) {
59
+ container.innerHTML = '<div style="color:#7a6228; text-align:center;">ESPERANDO REPORTE DE INTELIGENCIA...</div>';
60
+ return;
61
+ }
62
+
63
+ const maxTokens = Math.max(...entries.map(e => e.tokens), 5000);
64
+ container.innerHTML = entries.map(u => `
65
+ <div class='ranking-row'>
66
+ <div class='name'>${u.name}</div>
67
+ <div class='bar-container'><div class='bar' style='width:${Math.min((u.tokens/maxTokens)*100, 100)}%'></div></div>
68
+ <div class='tokens'>${u.tokens.toLocaleString()} TKNS</div>
69
+ </div>
70
+ `).join('');
71
+ } catch(e) { console.error('Error de enlace:', e); }
72
+ }
73
+ setInterval(updateStats, 5000);
74
+ updateStats();
75
+ </script>
76
  </body>
77
  </html>