Broprint.js - The world's easiest, smallest and powerful visitor identifier for browsers

Overview

Broprint.js

The world's easiest, smallest and powerful visitor identifier for browsers.

Current NPM version Tweet



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.


CodeSandbox, Live Demo

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.

🙉 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.



Fast implementation

Step 1: Install using npm or yarn:

Using npm:

//Install:
npm i npm i @rajesh896/broprint.js

Using Yarn:

//Install:
yarn add npm i @rajesh896/broprint.js



🎉 Examples

In Reactjs

{ // fingerprint is your unique browser id. // This is well tested // the result you receive here is the combination of Canvas fingerprint and audio fingerprint. })">
import { getCurrentBrowserFingerPrint } from "npm i @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 npm i @rajesh896/broprint.js
  2. Then -
FingerPrint ">
>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>FingerPrinttitle>
head>

<body>
    <script type="module">
        import("./node_modules/npm i @rajesh896/broprint.js/index.js").then((module) => {
            module.getCurrentBrowserFingerPrint().then((fingerprint) => {
                console.log(fingerprint);
            })
        })
    script>
body>

html>
  • 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!

👏 Supporters

Stargazers repo roster for @Rajesh-Royal/Broprint.js Forkers repo roster for @nRajesh-Royal/Broprint.js

Animated footer bars


Back to top

You might also like...
React project with Google Firebase API, create partys with admin view and user view. Users can ask topics to admin, and support other topics.

🧪 Tecnologias Esse projeto foi desenvolvido com as seguintes tecnologias: React Firebase TypeScript 🚀 Como executar Clone o projeto e acesse a pasta

Compares Discord libraries and their support of new API features. Made with React, Next.js, and Bulma.

Compares Discord libraries and their support of new API features. Made with React, Next.js, and Bulma.

⚛️  Deliver UI for Web and Mobile platforms without taking care about complexity on how to style there, learn React once and code everywhere
⚛️ Deliver UI for Web and Mobile platforms without taking care about complexity on how to style there, learn React once and code everywhere

SkynexUI Use the platform, don't care about how to style there ⚠️ Version 1.x.x is alpha, trust only in v2 A set of components writen on top of React

In this assignment you will start with a basic calculator and style it using CSS, inline styles, and styled-components.
In this assignment you will start with a basic calculator and style it using CSS, inline styles, and styled-components.

In this assignment you will start with a basic calculator and style it using CSS, inline styles, and styled-components.

JavaScript and TypeScript finite state machines and statecharts for the modern web.
JavaScript and TypeScript finite state machines and statecharts for the modern web.

JavaScript state machines and statecharts JavaScript and TypeScript finite state machines and statecharts for the modern web. 📖 Read the documentatio

PixelsMetaverse, Truffle and react and web3js team up to develop a metaverse game

English Pixels Metaverse Pixels Metaverse Introduction: Pixel Metaverse was born during the competition of the first Metaverse Training Camp held

This is used for minting NFTs and getting metadata , token owner, wallet address assigned to an NFT, just check it out and enjoy

nft-minter A Heroku web server to easily mint non-fungible tokens via an API Example Configuration: Blockchain: Ethereum Testnet: Rinkeby Contract: ER

Jed Saylor minting dapp is a quick and easy way to connect your smart contract and start minting NFTs.
Jed Saylor minting dapp is a quick and easy way to connect your smart contract and start minting NFTs.

Welcome to Jed Saylor 👾 All the code in these repos was created and explained by Jed Saylor on his course. To find help please visit: 📺 Instagram Je

Aline is a mobile application available on iOS and Android. Made with love and React-native.

Aline ! Aline est une application mobile Android et iOS qui vous aide dans la gestion de vos produits consignés : Trouvez les magasins qui proposent d

Comments
  • Bug: Same fingerprint to user that use iPhone

    Bug: Same fingerprint to user that use iPhone

    I could to see that users who have iphone, always generate the same fingerprint

    5950378396046291

    I tested in differente iphones and browsers (safari and chrome)

    Step to reproduce

    1. Go to the website https://broprintjs.netlify.app/ from a iphone (using chrome o safari)
    2. Click on Generate FingerPrint Button
    opened by juanurcola 1
Owner
Rajesh Royal
Your code's boyfriend                              Have 🔥 to learn new things, do experiments, fix 🕷️, and write about it.
Rajesh Royal
Simple and powerful state management in React and Preact

Remini Simple and powerful state management in React and Preact Easy to learn Small and quick From tiny to complex apps Get started At first you have

Slava Bereza 10 Sep 5, 2022
🕹 GBA emulator on your React project - easy and powerful to use!

react-gbajs GBA emulator on your React project - easy and powerful to use! Just three steps to set it up ✨ 1 - Apply GbaProvider import { GbaProvider

Bruno Macabeus 35 Sep 21, 2022
A superset of JavaScript which gives you static types and powerful tooling in Visual Studio Code

TypeScript Example npx create-react-native-app -t with-typescript TypeScript is a superset of JavaScript which gives you static types and powerful too

Michael Czuba 1 Aug 20, 2022
A powerful toolkit for building websites with beautiful design

Typography.js A powerful toolkit for building websites with beautiful typography. Typography.js A powerful toolkit for building websites with beautifu

Kyle Mathews 3.7k Sep 28, 2022
Responsive and customizable search and select for Giphy's GIFs and Stickers.

Responsive and customizable search and select for Giphy's GIFs. https://sergiop.github.io/react-giphy-searchbox/ React Giphy Searchbox is a powerful r

Sergio Pedercini 46 Sep 4, 2022
A React JS project to make age and gender prediction using Agify.io and Genderize.io. Only for practice use and just for fun~

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

Ken Tandrian 1 Sep 24, 2022
HTML meta tags for React-based apps. Works for both client- and server-side rendering, and has a strict but flexible API.

React Document Meta HTML meta tags for React-based apps. Works for both client- and server-side rendering, and has a strict but flexible API. Built wi

kodyl 320 Jun 14, 2022
A starter for React with Typescript with the fast Vite and all static code testing with Eslint and formatting with Prettier.

A starter for React with Typescript with the fast Vite and all static code testing with Eslint and formatting with Prettier.

The Sword Breaker 265 Sep 28, 2022
An interactive CLI automation tool 🛠️ for creating react.js and next.js projects most fast and efficiently. ⚛️

An interactive CLI automation tool ??️ for creating react.js and next.js projects most fast and efficiently. ⚛️

Alexis Guzman 27 Apr 12, 2022
Open source authentication and authorization service, container-native, PassportJS-native, built with React and Node.

id6 Authentication and authorization as a service Docs - Twitter Why id6 ? I wrote id6 out of frustration of re-writing authentication and authorizati

id6 12 Oct 31, 2021