diff --git a/icons.config.ts b/icons.config.ts
index a3f4ee29..a4d2962c 100644
--- a/icons.config.ts
+++ b/icons.config.ts
@@ -60,6 +60,8 @@ const config: IconsConfig = {
"play_arrow",
"extension",
"upload_file",
+ "commit",
+ "bug_report",
],
codePoints: {
speed: "e9e4",
diff --git a/package.json b/package.json
index f0534eb8..0fe2ff3d 100644
--- a/package.json
+++ b/package.json
@@ -3,6 +3,14 @@
"version": "0.5.0",
"license": "AGPL-3.0-or-later",
"private": true,
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/Theaninova/amacc1ng.git"
+ },
+ "homepage": "https://github.com/Theaninova/amacc1ng",
+ "bugs": {
+ "url": "https://github.com/Theaninova/amacc1ng/issues"
+ },
"scripts": {
"dev": "npm-run-all --parallel vite typesafe-i18n",
"dev:tauri": "tauri dev",
diff --git a/src/env.d.ts b/src/env.d.ts
index 536e7936..e10a2a24 100644
--- a/src/env.d.ts
+++ b/src/env.d.ts
@@ -12,3 +12,6 @@ interface ImportMetaEnv {
interface ImportMeta {
readonly env: ImportMetaEnv
}
+
+declare const HOMEPAGE_URL: string
+declare const BUGS_URL: string
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 6674f480..17142184 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -20,6 +20,7 @@
import {loadLocale} from "../i18n/i18n-util.sync"
import {detectLocale} from "../i18n/i18n-util"
import type {Locales} from "../i18n/i18n-types"
+ import Footer from "./Footer.svelte"
const locale = ((browser && localStorage.getItem("locale")) as Locales) || detectLocale()
loadLocale(locale)
@@ -68,6 +69,8 @@
+
+
{#if import.meta.env.TAURI_FAMILY === undefined && browser && !("serial" in navigator)}
{/if}
diff --git a/src/routes/Footer.svelte b/src/routes/Footer.svelte
new file mode 100644
index 00000000..842dda13
--- /dev/null
+++ b/src/routes/Footer.svelte
@@ -0,0 +1,43 @@
+
+
+
+
+
diff --git a/svelte.config.js b/svelte.config.js
index 21ac37f4..e5a3f01a 100644
--- a/svelte.config.js
+++ b/svelte.config.js
@@ -1,12 +1,19 @@
import adapter from "@sveltejs/adapter-static"
import preprocess from "svelte-preprocess"
import autoprefixer from "autoprefixer"
+import {readFile} from "fs/promises"
+import {fileURLToPath} from "url"
+
+const {version} = JSON.parse(await readFile(fileURLToPath(new URL("package.json", import.meta.url)), "utf8"))
/** @type {import('@sveltejs/kit').Config} */
const config = {
preprocess: [preprocess({postcss: {plugins: autoprefixer()}})],
kit: {
adapter: adapter(),
+ version: {
+ name: version,
+ },
},
}
diff --git a/vite.config.ts b/vite.config.ts
index 227278dc..ee550f93 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -4,9 +4,14 @@ import {sveltekit} from "@sveltejs/kit/vite"
import {defineConfig} from "vite"
import {SvelteKitPWA} from "@vite-pwa/sveltekit"
import ViteYaml from "@modyfi/vite-plugin-yaml"
+import {readFile} from "fs/promises"
+import {fileURLToPath} from "url"
const isTauri = "TAURI_FAMILY" in process.env
console.info(isTauri ? "Building for Tauri" : "Building for PWA")
+const {homepage, bugs} = JSON.parse(
+ await readFile(fileURLToPath(new URL("package.json", import.meta.url)), "utf8"),
+)
export default defineConfig({
build: {
@@ -16,6 +21,10 @@ export default defineConfig({
external: isTauri ? [/virtual:pwa.*/] : [],
},
},
+ define: {
+ HOMEPAGE_URL: `"${homepage}"`,
+ BUGS_URL: `"${bugs.url}"`,
+ },
envPrefix: "TAURI_",
plugins: [
ViteYaml(),