-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
Gurkan edited this page Feb 14, 2024
·
1 revision
It is very easy to get started using this library.
Prerequisites:
- Node.JS
- Umami Analytics
- A SolidJS project set up (Vite or Solid Start)
npm install @gurkz/solid-analyticsyarn add @gurkz/solid-analyticspnpm add @gurkz/solid-analyticsbun add @gurkz/solid-analytics// index.tsx
import { render } from "solid-js/web";
import "./styles.css";
import App from "./App";
import { Analytics } from "@gurkz/solid-analytics";
render(
() => (
<>
<Analytics hostUrl="<your umami instance url without a trailing slash>" websiteId="<your umami website id>">
<App />
</Analytics>
</>
),
document.getElementById('root')!,
);// app.tsx
import { Router } from "@solidjs/router";
import { FileRoutes } from "@solidjs/start";
import { Suspense } from "solid-js";
import "./app.css";
import { Analytics } from "@gurkz/solid-analytics";
export default function App() {
return (
<Router
root={(props) => (
<>
<Suspense>
<Analytics hostUrl="<your umami instance url without a trailing slash>" websiteId="<your umami website id>">
{props.children}
</Analytics>
</Suspense>
</>
)}
>
<FileRoutes />
</Router>
);
}- If you only want to track pageviews, you are now done. However, if you want to track specific events (i.e, button clicks), continue reading.
import { useAnalytics } from "@gurkz/solid-analytics";
export function Component() {
const { track } = useAnalytics();
return (
<button onClick={() => track("<event title>")}>click me</button>
);
}You now have a fully functioning analytics system in your app!
Happy hacking!