feat: initialize SysPulse-rs profiler project with Tauri v2 and React

This commit is contained in:
2026-02-22 17:39:34 +01:00
commit ec142b09bd
20 changed files with 1352 additions and 0 deletions

144
src/index.css Normal file
View File

@@ -0,0 +1,144 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
:root {
/* Catppuccin Mocha */
--rosewater: #f5e0dc;
--flamingo: #f2cdcd;
--pink: #f5c2e7;
--mauve: #cba6f7;
--red: #f38ba8;
--maroon: #eba0ac;
--peach: #fab387;
--yellow: #f9e2af;
--green: #a6e3a1;
--teal: #94e2d5;
--sky: #89dceb;
--sapphire: #74c7ec;
--blue: #89b4fa;
--lavender: #b4befe;
--text: #cdd6f4;
--subtext1: #bac2de;
--subtext0: #a6adc8;
--overlay2: #9399b2;
--overlay1: #7f849c;
--overlay0: #6c7086;
--surface2: #585b70;
--surface1: #45475a;
--surface0: #313244;
--base: #1e1e2e;
--mantle: #181825;
--crust: #11111b;
}
body {
margin: 0;
padding: 0;
background-color: var(--base);
color: var(--text);
font-family: 'Geist', 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
overflow: hidden;
-webkit-font-smoothing: antialiased;
}
.titlebar {
height: 48px;
background: var(--mantle);
user-select: none;
display: flex;
align-items: center;
justify-content: space-between;
border-bottom: 1px solid var(--surface0);
box-shadow: 0 4px 20px rgba(0,0,0,0.2);
z-index: 50;
}
.titlebar-drag {
flex: 1;
height: 100%;
display: flex;
align-items: center;
}
.card {
background: var(--surface0);
border-radius: 20px;
padding: 24px;
box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.5);
display: flex;
flex-direction: column;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.card:hover {
transform: translateY(-2px);
box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.6);
}
.card-title {
color: var(--subtext0);
font-size: 11px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.1em;
margin-bottom: 12px;
display: flex;
align-items: center;
gap: 8px;
}
.stat-value {
font-size: 36px;
font-weight: 900;
letter-spacing: -0.05em;
color: var(--text);
line-height: 1;
}
.custom-scrollbar::-webkit-scrollbar {
width: 6px;
}
.custom-scrollbar::-webkit-scrollbar-track {
background: transparent;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
background: var(--surface1);
border-radius: 10px;
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
background: var(--surface2);
}
@keyframes pulse-soft {
0%, 100% { opacity: 1; transform: scale(1); }
50% { opacity: 0.8; transform: scale(0.98); }
}
.animate-pulse-soft {
animation: pulse-soft 2s infinite ease-in-out;
}
.bg-red { background-color: var(--red); }
.bg-green { background-color: var(--green); }
.bg-blue { background-color: var(--blue); }
.bg-mauve { background-color: var(--mauve); }
.bg-surface0 { background-color: var(--surface0); }
.bg-surface1 { background-color: var(--surface1); }
.bg-base { background-color: var(--base); }
.text-red { color: var(--red); }
.text-green { color: var(--green); }
.text-blue { color: var(--blue); }
.text-mauve { color: var(--mauve); }
.text-text { color: var(--text); }
.text-subtext0 { color: var(--subtext0); }
.text-subtext1 { color: var(--subtext1); }
.text-overlay1 { color: var(--overlay1); }
.text-overlay2 { color: var(--overlay2); }
.border-surface1 { border-color: var(--surface1); }
.border-red { border-color: var(--red); }