sessionhawk
v1.0.4
Published
Complete browser fingerprinting library for detecting canvas and WebGL drift
Maintainers
Readme
SessionHawk
Complete browser fingerprinting library for detecting canvas and WebGL drift.
Installation
NPM
npm install sessionhawkYarn
yarn add sessionhawkPNPM
pnpm add sessionhawkCDN
<script type="module">
import { captureFingerprint } from 'https://cdn.jsdelivr.net/npm/sessionhawk@latest/dist/index.js';
const fingerprint = await captureFingerprint();
console.log(fingerprint);
</script>Usage
Capture all fingerprint data (default)
import { captureFingerprint } from 'sessionhawk';
const fingerprint = await captureFingerprint();
console.log(fingerprint);Exclude WebGL data (canvas only)
const fingerprint = await captureFingerprint({ exclude: 'webgl' });Exclude Canvas data (WebGL only)
const fingerprint = await captureFingerprint({ exclude: 'canvas' });React Example
import { captureFingerprint } from 'sessionhawk';
import { useEffect, useState } from 'react';
function App() {
const [fingerprint, setFingerprint] = useState(null);
useEffect(() => {
captureFingerprint().then(setFingerprint);
}, []);
return <pre>{JSON.stringify(fingerprint, null, 2)}</pre>;
}Next.js Example
'use client';
import { captureFingerprint } from 'sessionhawk';
import { useEffect, useState } from 'react';
export default function Home() {
const [fingerprint, setFingerprint] = useState(null);
useEffect(() => {
captureFingerprint().then(setFingerprint);
}, []);
return <pre>{JSON.stringify(fingerprint, null, 2)}</pre>;
}Vanilla JavaScript
<!DOCTYPE html>
<html>
<body>
<pre id="output"></pre>
<script type="module">
import { captureFingerprint } from 'sessionhawk';
const fingerprint = await captureFingerprint();
document.getElementById('output').textContent = JSON.stringify(fingerprint, null, 2);
</script>
</body>
</html>License
MIT
