diff --git a/bun.lock b/bun.lock index b116d756..3c70451a 100644 --- a/bun.lock +++ b/bun.lock @@ -9,6 +9,13 @@ "@astrojs/sitemap": "3.7.3", "@astrojs/svelte": "9.0.1", "@fontsource/poppins": "5.2.7", + "@iconify-json/file-icons": "^1.2.2", + "@iconify-json/flowbite": "^1.2.7", + "@iconify-json/griddy-icons": "^1.2.0", + "@iconify-json/mdi": "^1.2.3", + "@iconify-json/pinhead": "^1.2.13", + "@iconify-json/tabler": "^1.2.38", + "@iconify-json/wpf": "^1.2.0", "@tailwindcss/vite": "4.3.3", "astro": "7.1.1", "astro-iconset": "^0.0.6", @@ -224,6 +231,20 @@ "@humanwhocodes/retry": ["@humanwhocodes/retry@0.4.3", "", {}, "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ=="], + "@iconify-json/file-icons": ["@iconify-json/file-icons@1.2.2", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-ajk44wYGTiu79EAyrfNHNaxZ1/2Z1xuSOAvYUT/pAPWHc+P6n9TUZP/ccnPG18kx0WMBxmkHHQ9/zkm6ENhk+Q=="], + + "@iconify-json/flowbite": ["@iconify-json/flowbite@1.2.7", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-YmjHMSe6zBWI6XMZ35OGxgkX9k0lMiKmJIYOOymhc8rEiVbtZnnujJnGrfTider1JOoArQcCJzhHH6hUoXgiYA=="], + + "@iconify-json/griddy-icons": ["@iconify-json/griddy-icons@1.2.0", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-C3AdVCAC9WrUNFSmyljsiH59CuyOqUfALsanzD4dO0VOHt4Fz0sttDSeayiSap8u8uACeq8WMZ1KZAmMusuf9w=="], + + "@iconify-json/mdi": ["@iconify-json/mdi@1.2.3", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-O3cLwbDOK7NNDf2ihaQOH5F9JglnulNDFV7WprU2dSoZu3h3cWH//h74uQAB87brHmvFVxIOkuBX2sZSzYhScg=="], + + "@iconify-json/pinhead": ["@iconify-json/pinhead@1.2.13", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-B6vLWzIN3bX4qhRriU1JkKx9UW9eS7prQDnplWYneqeHj0mqSfD/R/Qf+zs1y1/5TfipWgxrsBdVdSE2zErWWg=="], + + "@iconify-json/tabler": ["@iconify-json/tabler@1.2.38", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-9v6ooRU/bKOK/Whv4w2aiK5gBnfCV9Ei+uD1iDDeLu2b+EnF3G3ZKkRKWEOOLG8bJyfKn6XEia6gUQ9oO7cF+Q=="], + + "@iconify-json/wpf": ["@iconify-json/wpf@1.2.0", "", { "dependencies": { "@iconify/types": "*" } }, "sha512-sA5z2Fy0rh6+wSMlXpj5Of4oRXZTn84zQFo2yWTtjbN5WTrH52iJrT4KLmepnF8l5VAsf+WbeXsQLFFhlVeDFA=="], + "@iconify/tools": ["@iconify/tools@5.0.12", "", { "dependencies": { "@cyberalien/svg-utils": "^1.2.15", "@iconify/types": "^2.0.0", "@iconify/utils": "^3.1.3", "fflate": "^0.8.3", "modern-tar": "^0.7.6", "pathe": "^2.0.3", "svgo": "^4.0.1" } }, "sha512-aFPwSFmFphUPVjNLUkgxgUPSPVgTEEjv0mE7NgvfoQBuE5TtsMrKa4HTY65cM5oXZ2a1xKQcW/RKhiOKEiAarw=="], "@iconify/types": ["@iconify/types@2.0.0", "", {}, "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg=="], diff --git a/package.json b/package.json index b5183957..0b26062b 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,13 @@ "@astrojs/sitemap": "3.7.3", "@astrojs/svelte": "9.0.1", "@fontsource/poppins": "5.2.7", + "@iconify-json/file-icons": "^1.2.2", + "@iconify-json/flowbite": "^1.2.7", + "@iconify-json/griddy-icons": "^1.2.0", + "@iconify-json/mdi": "^1.2.3", + "@iconify-json/pinhead": "^1.2.13", + "@iconify-json/tabler": "^1.2.38", + "@iconify-json/wpf": "^1.2.0", "@tailwindcss/vite": "4.3.3", "astro": "7.1.1", "astro-iconset": "^0.0.6", diff --git a/src/components/data/DropdownSelect.svelte b/src/components/data/DropdownSelect.svelte new file mode 100644 index 00000000..a5ca4695 --- /dev/null +++ b/src/components/data/DropdownSelect.svelte @@ -0,0 +1,70 @@ + + + + +
+ + + {#if dropDown} +
+ {#each options as option (option.name)} + + {/each} +
+ {/if} +
diff --git a/src/components/data/TackDownloadButton.svelte b/src/components/data/TackDownloadButton.svelte new file mode 100644 index 00000000..ce86d0b9 --- /dev/null +++ b/src/components/data/TackDownloadButton.svelte @@ -0,0 +1,91 @@ + + +
+ +
diff --git a/src/components/data/TackDownloadPage.svelte b/src/components/data/TackDownloadPage.svelte new file mode 100644 index 00000000..9006823c --- /dev/null +++ b/src/components/data/TackDownloadPage.svelte @@ -0,0 +1,92 @@ + + +
+
+
+
+ +
+

Downloads

+
+ +

+ Get Tack + {version} +

+ +

Before downloading, ensure your operating system and CPU architecture match!

+ +
+ Currently selected: + + on + +
+ +
+ +
+ +
+ +
+ + +
+
diff --git a/src/components/layout/NavBar.astro b/src/components/layout/NavBar.astro index b8301c89..7f22d176 100644 --- a/src/components/layout/NavBar.astro +++ b/src/components/layout/NavBar.astro @@ -29,6 +29,7 @@ import LogoMarkerLight from "@/assets/brand/logo-marker-light.svg"; Paper Folia Velocity + Tack Waterfall diff --git a/src/pages/downloads/index.astro b/src/pages/downloads/index.astro index b76c6417..b4ac3e83 100644 --- a/src/pages/downloads/index.astro +++ b/src/pages/downloads/index.astro @@ -49,5 +49,15 @@ import Layout from "@/layouts/Layout.astro"; eol /> +

Misc

+
+ +
diff --git a/src/pages/downloads/tack.astro b/src/pages/downloads/tack.astro new file mode 100644 index 00000000..ab91c1a5 --- /dev/null +++ b/src/pages/downloads/tack.astro @@ -0,0 +1,17 @@ +--- +export const prerender = false; +import TackDownloadPage from "@/components/data/TackDownloadPage.svelte"; +import Layout from "@/layouts/Layout.astro"; + +Astro.response.headers.set("Cache-Control", "public, max-age=300, s-maxage=600, stale-while-revalidate=120"); +Astro.response.headers.set("CDN-Cache-Control", "public, max-age=600, stale-while-revalidate=120"); +--- + + + + diff --git a/src/pages/software/tack.astro b/src/pages/software/tack.astro new file mode 100644 index 00000000..d4ac09db --- /dev/null +++ b/src/pages/software/tack.astro @@ -0,0 +1,30 @@ +--- +import Layout from "@/layouts/Layout.astro"; +import SoftwareHeader from "@/components/layout/SoftwareHeader.astro"; +import FeatureCard from "@/components/data/FeatureCard.astro"; +import Button from "@/components/input/Button.astro"; + +import HomeImage1 from "@/assets/images/home-1.png"; +import HomeImage3 from "@/assets/images/home-3.png"; +import CommunityImage from "@/assets/images/community.png"; + +import { Image } from "astro:assets"; + +import { getHangarProjects } from "@/utils/hangar"; + +const { pagination } = await getHangarProjects("paper"); +--- + + + +

+ Improved startup-time
for Paper +

+

Tack is our AOT-ready Paper JAR launcher for reduced startup time.

+
+