Add GitHub stars button with hover tooltip

This commit is contained in:
thefoxcost 2025-11-28 11:43:54 -08:00
parent 38ec057eef
commit a9de9dba70
6 changed files with 29 additions and 16 deletions

View File

@ -1,9 +0,0 @@
PUB_HOSTNAME=localhost:5173 # only gets used for plausible (for now)
PUB_PLAUSIBLE_URL=https://plausible.example.com # can be empty
PUB_ENV=development # "production", "development", or "nightly"
PUB_VERTD_URL=https://vertd.vert.sh # default vertd instance
PUB_DISABLE_ALL_EXTERNAL_REQUESTS=false # disables vertd, stripe, plausible, etc. use if your boss complains about privacy
# please do not change these. donations help a lot
PUB_DONATION_URL=https://donations.vert.sh
PUB_STRIPE_KEY=pk_live_51RDVmAGSxPVad6bQwzVNnbc28nlmzA30krLWk1fefCMpUPiSRPkavMMbGqa8A3lUaOCMlsUEVy2CWDYg0ip3aPpL00ZJlsMkf2

View File

@ -1,5 +1,6 @@
{
"lockfileVersion": 1,
"configVersion": 0,
"workspaces": {
"": {
"name": "vert",
@ -17,7 +18,7 @@
"clsx": "^2.1.1",
"fflate": "^0.8.2",
"lucide-svelte": "^0.554.0",
"music-metadata": "^11.10.1",
"music-metadata": "^11.10.3",
"overlayscrollbars": "^2.12.0",
"overlayscrollbars-svelte": "^0.5.5",
"p-queue": "^9.0.1",
@ -31,7 +32,7 @@
"@inlang/paraglide-js": "^2.5.0",
"@poppanator/sveltekit-svg": "^5.0.1",
"@sveltejs/adapter-static": "^3.0.10",
"@sveltejs/kit": "^2.48.5",
"@sveltejs/kit": "^2.49.0",
"@sveltejs/vite-plugin-svelte": "^4.0.4",
"@types/eslint": "^9.6.1",
"@types/sanitize-html": "^2.16.0",
@ -44,8 +45,8 @@
"prettier": "^3.6.2",
"prettier-plugin-svelte": "^3.4.0",
"prettier-plugin-tailwindcss": "^0.6.14",
"sass": "^1.94.1",
"svelte": "^5.43.12",
"sass": "^1.94.2",
"svelte": "^5.43.14",
"svelte-check": "^4.3.4",
"tailwindcss": "^3.4.18",
"typescript": "^5.9.3",

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<rect width="24" height="24" fill="none" />
<path fill="#626262" d="M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5c.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34c-.46-1.16-1.11-1.47-1.11-1.47c-.91-.62.07-.6.07-.6c1 .07 1.53 1.03 1.53 1.03c.87 1.52 2.34 1.07 2.91.83c.09-.65.35-1.09.63-1.34c-2.22-.25-4.55-1.11-4.55-4.92c0-1.11.38-2 1.03-2.71c-.1-.25-.45-1.29.1-2.64c0 0 .84-.27 2.75 1.02c.79-.22 1.65-.33 2.5-.33s1.71.11 2.5.33c1.91-1.29 2.75-1.02 2.75-1.02c.55 1.35.2 2.39.1 2.64c.65.71 1.03 1.6 1.03 2.71c0 3.82-2.34 4.66-4.57 4.91c.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2" />
</svg>

After

Width:  |  Height:  |  Size: 723 B

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<rect width="24" height="24" fill="none" />
<path fill="#626262" d="M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5c.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34c-.46-1.16-1.11-1.47-1.11-1.47c-.91-.62.07-.6.07-.6c1 .07 1.53 1.03 1.53 1.03c.87 1.52 2.34 1.07 2.91.83c.09-.65.35-1.09.63-1.34c-2.22-.25-4.55-1.11-4.55-4.92c0-1.11.38-2 1.03-2.71c-.1-.25-.45-1.29.1-2.64c0 0 .84-.27 2.75 1.02c.79-.22 1.65-.33 2.5-.33s1.71.11 2.5.33c1.91-1.29 2.75-1.02 2.75-1.02c.55 1.35.2 2.39.1 2.64c.65.71 1.03 1.6 1.03 2.71c0 3.82-2.34 4.66-4.57 4.91c.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2" />
</svg>

After

Width:  |  Height:  |  Size: 723 B

View File

@ -2,6 +2,7 @@
import { browser } from "$app/environment";
import { page } from "$app/state";
import { duration, fade } from "$lib/util/animation";
import { theme } from "$lib/store/index.svelte";
import {
effects,
files,
@ -10,10 +11,12 @@
} from "$lib/store/index.svelte";
import clsx from "clsx";
import {
Github,
InfoIcon,
MoonIcon,
RefreshCw,
SettingsIcon,
Star,
SunIcon,
UploadIcon,
type Icon as IconType,
@ -25,6 +28,9 @@
import Tooltip from "$lib/components/visual/Tooltip.svelte";
import { m } from "$lib/paraglide/messages";
const fetch_data = async () => {
const url = "";
};
const items = $derived<
{
name: string;
@ -169,7 +175,7 @@
{/snippet}
<div bind:this={container}>
<Panel class="max-w-[778px] w-screen h-20 flex items-center gap-3 relative">
<Panel class="max-w-[778px] w-screen h-20 flex items-center gap-2 relative">
{@const linkRect = linkRects.at(selectedIndex) || linkRects[0]}
{#if linkRect && isInitialized}
<div
@ -195,7 +201,7 @@
{@render link(item, i)}
{/each}
<div class="w-0.5 bg-separator h-full hidden md:flex"></div>
<Tooltip text={m["navbar.toggle_theme"]()} position="right">
<Tooltip text={m["navbar.toggle_theme"]()} position="top">
<button
onclick={() => {
const isDark =
@ -208,5 +214,12 @@
<MoonIcon class="dynadark:block hidden" />
</button>
</Tooltip>
<Tooltip text="⭐ 10.7K" position="right">
<a href="https://github.com/VERT-sh/VERT">
<div class="mr-2">
<Github color={$theme === "dark" ? "white" : "black"} />
</div>
</a>
</Tooltip>
</Panel>
</div>

View File

@ -2,6 +2,6 @@
import Navbar from "./Base.svelte";
</script>
<div class="hidden md:flex p-8 w-screen justify-center">
<div class="hidden md:flex p-8 w-full justify-center">
<Navbar />
</div>