UNPKG

bitfact

Version:

A Javascript library to fingerprint (prove) your data, text, & files on the Ethereum blockchain.

78 lines (68 loc) β€’ 2.47 kB
<p align="center"> <img src="https://raw.githubusercontent.com/zachalam/BitFact/master/readme/header.png" alt="BitFact Header Image" title="BitFact" align="center" /> <br /><br /> Prove your data with this delightful tool. <br /> BitFact fingerprints information and then etches it on the Ethereum Blockchain. <br /><br /> <img src="https://img.shields.io/github/issues/zachalam/BitFact" /> <img src="https://img.shields.io/github/license/zachalam/BitFact" /> <img src="https://img.shields.io/npm/v/bitfact" /> <img src="https://img.shields.io/bundlephobia/minzip/bitfact" /> <br /><br /> </p> --- ## Install Available in **[πŸ—„οΈ npm](https://www.npmjs.com/package/bitfact)** and **[🧢 yarn](https://yarnpkg.com/package/bitfact)** flavours. ```java npm install -g bitfact ``` ```java yarn global add bitfact ``` ## Features - πŸ–οΈ Fingerprint any data with 2 easy calls. [What's a fingerprint?](https://en.wikipedia.org/wiki/Fingerprint_(computing)) - ♾️ Permanent hash etched on the Ethereum blockchain. - β›½ Tiny gas fees (~21,000) - the same as sending ether. - 😎 Use with: mainnet (live), ropsten (testnet), & beaconchain (eth2). ## Quickstart πŸš— The only thing you need to drive is an Ethereum `provider` and `privateKey`. ```java $ bitfact setup ``` ### Stamp πŸͺ§ After setup, use `bitfact stamp` with `-f` to stamp a file or `-t` to stamp text. ```java $ bitfact stamp -f hello_world.txt ``` ``` β “ Confirming.. πŸ›‘οΈ Success! Stamped on Blockchain: Txid: 0xbae00000000000000005 ``` ### Verify ```java $ bitfact verify -f hello_world.txt -tx 0xbae00000000000000005 ``` ``` β “ Confirming.. πŸ›‘οΈ Response received from Blockchain. Stamped: YES ``` ## Documentation The code is well tested and fully documented. Pull requests to docs are welcome. - πŸ“— **Documentation Site: https://docs.bitfact.io/** - Project Repo: The documentation can also be viewed in the `docs/guides` folder on the repository. ## Use Programatically πŸ“œ You can also import `bitfact` as a module in your own project. ```javascript const BitFact = require("bitfact"); // load from npm or yarn const bitfact = new BitFact({ provider: "https://mainnet.infura.io/v3/37a0db22401bbe211112", privateKey: "321d3fa232e55dedee2bd914273f78897f69053b61437c5", options: {chain: 'mainnet'} }); const receipt = await bitfact.stampText("Hello World!", "this is my memo"); console.log(receipt); ``` BitFact | Crafted in Las Vegas (don't gamble with your data) 🎰