diff --git a/bun.lock b/bun.lock index c37940b..dc55053 100644 --- a/bun.lock +++ b/bun.lock @@ -13,6 +13,7 @@ "@tailwindcss/vite": "^4.1.17", "astro": "^5.15.7", "d3-scale": "^4.0.2", + "d3-shape": "^3.2.0", "layerchart": "2.0.0-next.43", "svelte": "^5.43.6", "tailwindcss": "^4.1.17", @@ -20,6 +21,7 @@ }, "devDependencies": { "@types/d3-scale": "^4.0.9", + "@types/d3-shape": "^3.1.7", "vite": "^7.2.2", }, }, @@ -535,8 +537,12 @@ "@trysound/sax": ["@trysound/sax@0.2.0", "", {}, "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="], + "@types/d3-path": ["@types/d3-path@3.1.1", "", {}, "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg=="], + "@types/d3-scale": ["@types/d3-scale@4.0.9", "", { "dependencies": { "@types/d3-time": "*" } }, "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw=="], + "@types/d3-shape": ["@types/d3-shape@3.1.7", "", { "dependencies": { "@types/d3-path": "*" } }, "sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg=="], + "@types/d3-time": ["@types/d3-time@3.0.4", "", {}, "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g=="], "@types/debug": ["@types/debug@4.1.12", "", { "dependencies": { "@types/ms": "*" } }, "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ=="], diff --git a/package.json b/package.json index bc298c4..53153ac 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "@tailwindcss/vite": "^4.1.17", "astro": "^5.15.7", "d3-scale": "^4.0.2", + "d3-shape": "^3.2.0", "layerchart": "2.0.0-next.43", "svelte": "^5.43.6", "tailwindcss": "^4.1.17", @@ -25,6 +26,7 @@ }, "devDependencies": { "@types/d3-scale": "^4.0.9", + "@types/d3-shape": "^3.1.7", "vite": "^7.2.2" } } diff --git a/src/components/Computer.svelte b/src/components/Computer.svelte index 9aa53e9..5399681 100644 --- a/src/components/Computer.svelte +++ b/src/components/Computer.svelte @@ -1,7 +1,8 @@ -
-
- CPU: - {currentCPU}% - - RAM: - {currentRAM}% - - Clicks: - {clicksPerMinute.toFixed(2)}/min - - Keys: - {keysPerMinute.toFixed(2)}/min -
- -
- Uptime: - {uptime} - - All Time Uptime: - {allTimeUptime} - - All Time Clicks: - {allTimeClicks} - - All Time Keys: - {allTimeKeys} -
-
- -
-
- +
-
- - - - +
+ computer - - - {#snippet children({ gradient })} - d.ram} fill={gradient} line={{ class: "stroke-2 stroke-peach" }} /> +
+ +
+
+
+ CPU + {currentCPU}% +
+
+
+
+
+ +
+
+ RAM + {currentRAM}% +
+
+
+
+
+
+ + +
+ +
+
+
+ + + + + + + +
+ UPTIME +
+
{uptime}
+
Total: {allTimeUptime}
+
+ + +
+
ACTIVITY / MIN
+
+
+ Clicks + {clicksPerMinute.toFixed(1)} +
+
+ Keys + {keysPerMinute.toFixed(1)} +
+
+
+ + +
+
ALL TIME
+
+
+ Clicks + {allTimeClicks} +
+
+ Keys + {allTimeKeys} +
+
+
+
+
+ +
+ + + + + + + + {#snippet children({ gradient })} + d.ram} fill={gradient} line={{ class: "stroke-2 stroke-peach" }} curve={curveBasis} /> + {/snippet} + + + + + {#snippet children({ gradient })} + d.cpu} fill={gradient} line={{ class: "stroke-2 stroke-yellow" }} curve={curveBasis} /> + {/snippet} + + + + d.ram} points={{ class: "fill-peach" }} /> + d.cpu} points={{ class: "fill-yellow" }} /> + + + + {#snippet children({ data })} + + + + + {/snippet} - + + +
- - - {#snippet children({ gradient })} - d.cpu} fill={gradient} line={{ class: "stroke-2 stroke-yellow" }} /> +
+ + + + + + + + {#snippet children({ gradient })} + d.keys} fill={gradient} line={{ class: "stroke-2 stroke-green" }} curve={curveBasis} /> + {/snippet} + + + + + {#snippet children({ gradient })} + d.clicks} fill={gradient} line={{ class: "stroke-2 stroke-teal" }} curve={curveBasis} /> + {/snippet} + + + + d.keys} points={{ class: "fill-green" }} /> + d.clicks} points={{ class: "fill-teal" }} /> + + + + {#snippet children({ data })} + + + + + {/snippet} - - - - d.ram} points={{ class: "fill-peach" }} /> - d.cpu} points={{ class: "fill-yellow" }} /> - - - - {#snippet children({ data })} - - - - - - {/snippet} - - -
-
- -
- - - - - - - - {#snippet children({ gradient })} - d.keys} fill={gradient} line={{ class: "stroke-2 stroke-green" }} /> - {/snippet} - - - - - {#snippet children({ gradient })} - d.clicks} fill={gradient} line={{ class: "stroke-2 stroke-teal" }} /> - {/snippet} - - - - d.keys} points={{ class: "fill-green" }} /> - d.clicks} points={{ class: "fill-teal" }} /> - - - - {#snippet children({ data })} - - - - - - {/snippet} - - + + +
+
diff --git a/src/pages/status.astro b/src/pages/status.astro index 6dec229..fd391f6 100644 --- a/src/pages/status.astro +++ b/src/pages/status.astro @@ -7,10 +7,5 @@ import Computer from "../components/Computer.svelte"; - -
- computer - - -
+