diff --git a/assets/logomark.svg b/assets/logomark.svg
new file mode 100644
index 0000000..404f373
--- /dev/null
+++ b/assets/logomark.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs
index fa116c0..ab1d7f1 100644
--- a/docs/astro.config.mjs
+++ b/docs/astro.config.mjs
@@ -1,6 +1,6 @@
-import { defineConfig } from "astro/config"
import starlight from "@astrojs/starlight"
import tailwind from "@astrojs/tailwind"
+import { defineConfig } from "astro/config"
import vercel from "@astrojs/vercel/serverless"
@@ -35,7 +35,56 @@ export default defineConfig({
components: {
SiteTitle: "./src/components/SiteTitle.astro",
},
- customCss: ["./src/tailwind.css"],
+ customCss: ["./src/tailwind.css", "@fontsource-variable/nunito-sans"],
+ favicon: "/favicon.ico",
+ head: [
+ {
+ tag: "meta",
+ attrs: {
+ name: "theme-color",
+ content: "#F19D1E",
+ },
+ },
+ {
+ tag: "link",
+ attrs: {
+ rel: "icon",
+ type: "image/png",
+ href: "/favicon-48x48.png",
+ sizes: "48x48",
+ },
+ },
+ {
+ tag: "link",
+ attrs: {
+ rel: "icon",
+ type: "image/svg+xml",
+ href: "/favicon.svg",
+ },
+ },
+ {
+ tag: "link",
+ attrs: {
+ rel: "apple-touch-icon",
+ sizes: "180x180",
+ href: "/apple-touch-icon.png",
+ },
+ },
+ {
+ tag: "meta",
+ attrs: {
+ name: "apple-mobile-web-app-title",
+ content: "pesde docs",
+ },
+ },
+ {
+ tag: "link",
+ attrs: {
+ rel: "manifest",
+ href: "/site.webmanifest",
+ },
+ },
+ ],
}),
tailwind({
applyBaseStyles: false,
@@ -47,4 +96,3 @@ export default defineConfig({
output: "hybrid",
adapter: vercel(),
})
-
diff --git a/docs/bun.lockb b/docs/bun.lockb
index ed4cfda..cd13c41 100755
Binary files a/docs/bun.lockb and b/docs/bun.lockb differ
diff --git a/docs/package.json b/docs/package.json
index b38ffd3..b2f7aa2 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -1,29 +1,30 @@
{
- "name": "docs",
- "type": "module",
- "version": "0.0.1",
- "scripts": {
- "dev": "astro dev",
- "start": "astro dev",
- "build": "astro check && astro build",
- "preview": "astro preview",
- "astro": "astro"
- },
- "dependencies": {
- "@astrojs/check": "^0.9.3",
- "@astrojs/starlight": "^0.28.2",
- "@astrojs/starlight-tailwind": "^2.0.3",
- "@astrojs/tailwind": "^5.1.1",
- "@astrojs/vercel": "^7.8.1",
- "@shikijs/rehype": "^1.21.0",
- "astro": "^4.15.9",
- "sharp": "^0.33.5",
- "shiki": "^1.21.0",
- "tailwindcss": "^3.4.13",
- "typescript": "^5.6.2"
- },
- "devDependencies": {
- "prettier-plugin-astro": "^0.14.1",
- "prettier-plugin-tailwindcss": "^0.6.8"
- }
+ "name": "docs",
+ "type": "module",
+ "version": "0.0.1",
+ "scripts": {
+ "dev": "astro dev",
+ "start": "astro dev",
+ "build": "astro check && astro build",
+ "preview": "astro preview",
+ "astro": "astro"
+ },
+ "dependencies": {
+ "@astrojs/check": "^0.9.3",
+ "@astrojs/starlight": "^0.28.2",
+ "@astrojs/starlight-tailwind": "^2.0.3",
+ "@astrojs/tailwind": "^5.1.1",
+ "@astrojs/vercel": "^7.8.1",
+ "@fontsource-variable/nunito-sans": "^5.1.0",
+ "@shikijs/rehype": "^1.21.0",
+ "astro": "^4.15.9",
+ "sharp": "^0.33.5",
+ "shiki": "^1.21.0",
+ "tailwindcss": "^3.4.13",
+ "typescript": "^5.6.2"
+ },
+ "devDependencies": {
+ "prettier-plugin-astro": "^0.14.1",
+ "prettier-plugin-tailwindcss": "^0.6.8"
+ }
}
diff --git a/docs/public/apple-touch-icon.png b/docs/public/apple-touch-icon.png
new file mode 100644
index 0000000..b0d7532
Binary files /dev/null and b/docs/public/apple-touch-icon.png differ
diff --git a/docs/public/favicon-48x48.png b/docs/public/favicon-48x48.png
new file mode 100644
index 0000000..62e1267
Binary files /dev/null and b/docs/public/favicon-48x48.png differ
diff --git a/docs/public/favicon.ico b/docs/public/favicon.ico
new file mode 100644
index 0000000..f27ff62
Binary files /dev/null and b/docs/public/favicon.ico differ
diff --git a/docs/public/favicon.svg b/docs/public/favicon.svg
index cba5ac1..3e605c9 100644
--- a/docs/public/favicon.svg
+++ b/docs/public/favicon.svg
@@ -1 +1,8 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/public/site.webmanifest b/docs/public/site.webmanifest
new file mode 100644
index 0000000..a59de4c
--- /dev/null
+++ b/docs/public/site.webmanifest
@@ -0,0 +1,21 @@
+{
+ "name": "pesde",
+ "short_name": "pesde",
+ "icons": [
+ {
+ "src": "/web-app-manifest-192x192.png",
+ "sizes": "192x192",
+ "type": "image/png",
+ "purpose": "maskable"
+ },
+ {
+ "src": "/web-app-manifest-512x512.png",
+ "sizes": "512x512",
+ "type": "image/png",
+ "purpose": "maskable"
+ }
+ ],
+ "theme_color": "#0a0704",
+ "background_color": "#0a0704",
+ "display": "standalone"
+}
\ No newline at end of file
diff --git a/docs/public/web-app-manifest-192x192.png b/docs/public/web-app-manifest-192x192.png
new file mode 100644
index 0000000..47b87ff
Binary files /dev/null and b/docs/public/web-app-manifest-192x192.png differ
diff --git a/docs/public/web-app-manifest-512x512.png b/docs/public/web-app-manifest-512x512.png
new file mode 100644
index 0000000..8da146d
Binary files /dev/null and b/docs/public/web-app-manifest-512x512.png differ
diff --git a/favicon.zip b/favicon.zip
new file mode 100755
index 0000000..6612a82
Binary files /dev/null and b/favicon.zip differ
diff --git a/website/src/routes/+layout.svelte b/website/src/routes/+layout.svelte
index 2a3a19b..2e9b180 100644
--- a/website/src/routes/+layout.svelte
+++ b/website/src/routes/+layout.svelte
@@ -1,13 +1,42 @@
+
+ {title ? `${title} - pesde` : "pesde"}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+ {@render children()}
+
diff --git a/website/src/routes/+page.ts b/website/src/routes/+page.ts
index 5a5655b..2f84aea 100644
--- a/website/src/routes/+page.ts
+++ b/website/src/routes/+page.ts
@@ -4,5 +4,7 @@ import type { PageLoad } from "./$types"
export const load: PageLoad = async ({ fetch }) => {
const { data: packages } = await fetchRegistryJson("search", fetch)
- return { packages }
+ return {
+ packages,
+ }
}
diff --git a/website/src/routes/packages/[scope]/[name]/[[version]]/[[target]]/+page.ts b/website/src/routes/packages/[scope]/[name]/[[version]]/[[target]]/+page.ts
index c5887c1..59ba211 100644
--- a/website/src/routes/packages/[scope]/[name]/[[version]]/[[target]]/+page.ts
+++ b/website/src/routes/packages/[scope]/[name]/[[version]]/[[target]]/+page.ts
@@ -67,5 +67,10 @@ export const load: PageLoad = async ({ parent, fetch }) => {
return {
readmeHtml,
pkg,
+
+ meta: {
+ title: `${name} - ${version}`,
+ description: pkg.description,
+ },
}
}
diff --git a/website/src/routes/packages/[scope]/[name]/versions/+page.ts b/website/src/routes/packages/[scope]/[name]/versions/+page.ts
index dd140b6..26b58e0 100644
--- a/website/src/routes/packages/[scope]/[name]/versions/+page.ts
+++ b/website/src/routes/packages/[scope]/[name]/versions/+page.ts
@@ -19,6 +19,11 @@ export const load: PageLoad = async ({ params, fetch }) => {
return {
versions,
+
+ meta: {
+ title: `${versions[0].name} - versions`,
+ description: versions[0].description,
+ },
}
} catch (e) {
if (e instanceof RegistryHttpError && e.response.status === 404) {
diff --git a/website/src/routes/search/+page.ts b/website/src/routes/search/+page.ts
index 1ddad36..888ac05 100644
--- a/website/src/routes/search/+page.ts
+++ b/website/src/routes/search/+page.ts
@@ -22,5 +22,10 @@ export const load: PageLoad = async ({ fetch, url }) => {
page,
pageSize: PAGE_SIZE,
result,
+
+ meta: {
+ title: query === "" ? "search" : `results for "${query}"`,
+ description: "Search for packages in the pesde registry.",
+ },
}
}
diff --git a/website/static/apple-touch-icon.png b/website/static/apple-touch-icon.png
new file mode 100644
index 0000000..b0d7532
Binary files /dev/null and b/website/static/apple-touch-icon.png differ
diff --git a/website/static/favicon-48x48.png b/website/static/favicon-48x48.png
new file mode 100644
index 0000000..62e1267
Binary files /dev/null and b/website/static/favicon-48x48.png differ
diff --git a/website/static/favicon.ico b/website/static/favicon.ico
new file mode 100644
index 0000000..f27ff62
Binary files /dev/null and b/website/static/favicon.ico differ
diff --git a/website/static/favicon.png b/website/static/favicon.png
deleted file mode 100644
index 825b9e6..0000000
Binary files a/website/static/favicon.png and /dev/null differ
diff --git a/website/static/favicon.svg b/website/static/favicon.svg
new file mode 100644
index 0000000..3e605c9
--- /dev/null
+++ b/website/static/favicon.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/website/static/site.webmanifest b/website/static/site.webmanifest
new file mode 100644
index 0000000..a59de4c
--- /dev/null
+++ b/website/static/site.webmanifest
@@ -0,0 +1,21 @@
+{
+ "name": "pesde",
+ "short_name": "pesde",
+ "icons": [
+ {
+ "src": "/web-app-manifest-192x192.png",
+ "sizes": "192x192",
+ "type": "image/png",
+ "purpose": "maskable"
+ },
+ {
+ "src": "/web-app-manifest-512x512.png",
+ "sizes": "512x512",
+ "type": "image/png",
+ "purpose": "maskable"
+ }
+ ],
+ "theme_color": "#0a0704",
+ "background_color": "#0a0704",
+ "display": "standalone"
+}
\ No newline at end of file
diff --git a/website/static/web-app-manifest-192x192.png b/website/static/web-app-manifest-192x192.png
new file mode 100644
index 0000000..47b87ff
Binary files /dev/null and b/website/static/web-app-manifest-192x192.png differ
diff --git a/website/static/web-app-manifest-512x512.png b/website/static/web-app-manifest-512x512.png
new file mode 100644
index 0000000..8da146d
Binary files /dev/null and b/website/static/web-app-manifest-512x512.png differ