Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rajesh-royal/broprint.js
The world's easiest, smallest and powerful visitor identifier for browsers.
https://github.com/rajesh-royal/broprint.js
audio-fingerprinting browserfingerprint canvas-fingerprinting cryptography fingerprinting frauddetection identification javascript jsfingerprint reactjs typescript uniquebrowserid visitor-identifier
Last synced: 6 days ago
JSON representation
The world's easiest, smallest and powerful visitor identifier for browsers.
- Host: GitHub
- URL: https://github.com/rajesh-royal/broprint.js
- Owner: Rajesh-Royal
- License: mit
- Created: 2022-05-18T11:34:16.000Z (over 2 years ago)
- Default Branch: develop
- Last Pushed: 2024-04-21T04:24:48.000Z (7 months ago)
- Last Synced: 2024-04-24T10:29:16.299Z (7 months ago)
- Topics: audio-fingerprinting, browserfingerprint, canvas-fingerprinting, cryptography, fingerprinting, frauddetection, identification, javascript, jsfingerprint, reactjs, typescript, uniquebrowserid, visitor-identifier
- Language: TypeScript
- Homepage: https://broprintjs.netlify.app/
- Size: 810 KB
- Stars: 299
- Watchers: 5
- Forks: 54
- Open Issues: 4
-
Metadata Files:
- Readme: README.MD
- Changelog: changelog.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Broprint.js
The world's easiest, smallest and powerful visitor identifier for browsers.
This package generates a unique ID/String for different browsers. Like chrome, Firefox or any other browsers which support `canvas` and `audio` fingerprinting. You can easily do the browser fingerprinting with this library. Its small and minimal.
> ⚠ The code is completely open source and not relating to anyone, created in my spare time. [only for educational purpose]
> The algorithms used to encrypt/decrypt data - `murmurhash3_32_gc`, `cyrb53` and `javaHashCode`. Code is inside `.src/code/EncryptDecrypt.js`.
## :hear_no_evil: What's all the hullabaloo?
Broprint.js helps JavaScript developers code visitors identifier more simply, readably, and securely. Whether you need to find a unique visitor, do analytics, browser fingerprinting, or do anything of the like while even preventing frauds, we've got you covered at a **cryptographically strong** level. The best part? Our library is extremely lightweight and developer friendly- which means it won't take a toll on your project, and it's uber-simple to implement. This library works on the concept of **canvas** fingerprint and **audio** fingerprint, the final result which a user get is the combination of **audio and canvas fingerprint**. We are using **cryptojs** under the hood for encryptions but you can easily tweek the library to remove the dependency.## :zap: Fast implementation
**Step 1:** Install using npm or yarn:
Using npm:
```JavaScript
//Install:
npm i @rajesh896/broprint.js
```
Using Yarn:
```Javascript
//Install:
yarn add @rajesh896/broprint.js
```
## :tada: Examples
>### **In Reactjs**
```javascript
import { getCurrentBrowserFingerPrint } from "@rajesh896/broprint.js";getCurrentBrowserFingerPrint().then((fingerprint) => {
// fingerprint is your unique browser id.
// This is well tested// the result you receive here is the combination of Canvas fingerprint and audio fingerprint.
})
```>### Using this script in the html files
1. Execute `npm i @rajesh896/broprint.js`
2. Then -
```html
FingerPrint
import("./node_modules/@rajesh896/broprint.js/index.js").then((module) => {
module.getCurrentBrowserFingerPrint().then((fingerprint) => {
console.log(fingerprint);
})
})
```
- From version `1.1.0` onwards we have a dependency `crypto-js`. If you do not want to have this dependency then use the earlier versions of this library.
If you want to use it in simple `.html` file, please read the `index.html` file in the root directory.
This repository is for educational and demonstration purposes only!
## :clap: Supporters
[![Stargazers repo roster for @Rajesh-Royal/Broprint.js](https://reporoster.com/stars/Rajesh-Royal/Broprint.js)](https://github.com/Rajesh-Royal/Broprint.js/stargazers)
[![Forkers repo roster for @nRajesh-Royal/Broprint.js](https://reporoster.com/forks/Rajesh-Royal/Broprint.js)](https://github.com/Rajesh-Royal/Broprint.js/network/members)