aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main.ts2
-rw-r--r--src/plugins/plausible.plugin.ts17
2 files changed, 19 insertions, 0 deletions
diff --git a/src/main.ts b/src/main.ts
index 8de1ca5..fe0b02f 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -2,6 +2,7 @@ import { createApp } from 'vue';
import { createPinia } from 'pinia';
import { createHead } from '@vueuse/head';
import { registerSW } from 'virtual:pwa-register';
+import { plausible } from './plugins/plausible.plugin';
registerSW();
@@ -16,5 +17,6 @@ app.use(createPinia());
app.use(createHead());
app.use(router);
app.use(naive);
+app.use(plausible);
app.mount('#app');
diff --git a/src/plugins/plausible.plugin.ts b/src/plugins/plausible.plugin.ts
new file mode 100644
index 0000000..7acfe02
--- /dev/null
+++ b/src/plugins/plausible.plugin.ts
@@ -0,0 +1,17 @@
+import Plausible, { type PlausibleOptions } from 'plausible-tracker';
+import type { App } from 'vue';
+
+const options: PlausibleOptions = {
+ domain: import.meta.env.VITE_PLAUSIBLE_DOMAIN ,
+ apiHost: import.meta.env.VITE_PLAUSIBLE_API_HOST,
+ trackLocalhost: false,
+};
+
+export const plausible = {
+ install: (app: App) => {
+ const plausible = Plausible(options);
+ plausible.enableAutoPageviews();
+
+ app.config.globalProperties.$plausible = plausible;
+ },
+};