Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy
npm install @tracetail/angularOfficial Angular SDK for TraceTail - Enterprise Browser Fingerprinting with over 99.5% accuracy.




- 🎯 Over 99.5% Accuracy - Industry-leading browser fingerprinting
- ⚡ <25ms Performance - Lightning-fast fingerprint generation
- 🛡️ Fraud Detection - Built-in risk scoring and fraud prevention
- 🔄 Real-time Updates - Live visitor tracking and analytics
- 📦 27KB Bundle - Lightweight and optimized
- 🏗️ Angular 14+ - Full support for modern Angular versions
``bash`
npm install @tracetail/angular
`typescript
import { TraceTailModule } from '@tracetail/angular';
@NgModule({
imports: [
TraceTailModule.forRoot({
apiKey: 'your-api-key-here',
config: {
enhanced: true
}
})
]
})
export class AppModule { }
`
`typescript
import { TraceTailService } from '@tracetail/angular';
@Component({
template:
})
export class MyComponent {
fingerprint$ = this.traceTail.fingerprint$;
constructor(private traceTail: TraceTailService) {}
}
`Features
$3
Protect routes from high-risk visitors:
`typescript
const routes: Routes = [
{
path: 'checkout',
component: CheckoutComponent,
canActivate: [FraudProtectionGuard],
data: { maxRiskScore: 0.5 }
}
];
`$3
Apply fraud detection to any element:
`html
appFraudDetection="high"
[disableOnRisk]="true"
class="purchase-btn"
>
Complete Purchase
`$3
Automatically add visitor ID to all API requests:
`typescript
// Automatically included when using forRoot()
// Adds X-TraceTail-Visitor-ID header to requests
`$3
Track user actions with fraud detection:
`typescript
async onLogin(credentials: any) {
const result = await this.traceTail.trackEvent('login', {
username: credentials.username
});
if (result.fraudulent) {
// Handle fraud
}
}
`API Reference
$3
-
fingerprint$: Observable - Current fingerprint data
- loading$: Observable - Loading state
- error$: Observable - Error state
- getFingerprint(): Promise - Get fingerprint as promise
- trackEvent(event, data?): Promise - Track events
- checkFraud(data): Promise - Check fraud risk
- retry(): void - Retry fingerprinting
- refresh(): Promise - Force refresh$3
`typescript
interface Fingerprint {
visitorId: string;
confidence: number; // 0-1
riskScore: number; // 0-1
fraudulent: boolean;
signals: SignalData;
timestamp: Date;
}
`Examples
$3
`typescript
@Component({
template:
})
export class LoginComponent {
riskScore$ = this.traceTail.fingerprint$.pipe(
map(fp => fp?.riskScore || 0)
);
constructor(private traceTail: TraceTailService) {}
async login() {
const fp = await this.traceTail.getFingerprint();
if (fp.riskScore > 0.7) {
// Require 2FA
}
}
}
`$3
`typescript
@Injectable()
export class PersonalizationService {
preferences$ = this.traceTail.fingerprint$.pipe(
switchMap(fp => fp ?
this.http.get(/api/preferences/${fp.visitorId}) :
of(null)
)
);
constructor(
private traceTail: TraceTailService,
private http: HttpClient
) {}
}
``- 📚 Documentation
- 💬 Discord Community
- 📧 Email Support
- 🐛 Issue Tracker
MIT - see LICENSE for details.