Time tracker app

This commit is contained in:
2026-01-10 08:24:55 +07:00
parent 3256c40841
commit b6eecc4483
46 changed files with 11368 additions and 2 deletions

View File

@@ -0,0 +1,104 @@
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Game Marathon Tracker</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Segoe UI', system-ui, sans-serif;
background: #0d0e14;
color: white;
height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
overflow: hidden;
-webkit-app-region: drag;
}
.logo-img {
width: 120px;
height: 120px;
margin-bottom: 20px;
border-radius: 50%;
animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% { transform: scale(1); filter: drop-shadow(0 0 10px rgba(34, 211, 238, 0.5)); }
50% { transform: scale(1.05); filter: drop-shadow(0 0 20px rgba(139, 92, 246, 0.7)); }
}
.status {
font-size: 13px;
color: #9ca3af;
text-align: center;
min-height: 20px;
margin-top: 10px;
}
.progress-container {
width: 200px;
height: 4px;
background: rgba(34, 211, 238, 0.1);
border-radius: 2px;
margin-top: 15px;
overflow: hidden;
display: none;
}
.progress-bar {
height: 100%;
background: linear-gradient(90deg, #22d3ee, #8b5cf6);
border-radius: 2px;
width: 0%;
transition: width 0.3s ease;
}
.version {
position: absolute;
bottom: 15px;
font-size: 11px;
color: #6b7280;
}
</style>
</head>
<body>
<img src="logo.jpg" alt="Logo" class="logo-img">
<div class="status" id="status">Проверка обновлений...</div>
<div class="progress-container" id="progressContainer">
<div class="progress-bar" id="progressBar"></div>
</div>
<div class="version" id="version"></div>
<script>
const { ipcRenderer } = require('electron');
// Get current version
ipcRenderer.invoke('get-app-version').then(version => {
document.getElementById('version').textContent = `v${version}`;
});
// Listen for status updates
ipcRenderer.on('update-status', (event, status) => {
document.getElementById('status').textContent = status;
});
// Listen for download progress
ipcRenderer.on('update-progress', (event, percent) => {
const container = document.getElementById('progressContainer');
const bar = document.getElementById('progressBar');
container.style.display = 'block';
bar.style.width = `${percent}%`;
});
</script>
</body>
</html>