Some super-tiny implementations of common hash functions (MD5, SHA-1 and SHA-256).
From npm:
npm i tiny-hashes
Preferably using ES modules:
importmd5from'tiny-hashes/md5';importsha1from'tiny-hashes/sha1';importsha256from'tiny-hashes/sha256';md5('hello, world');// "e4d7f1b4ed2e42d15898f4b27b019da4", hopefullysha1('hello, world');// "b7e23ec29af22b0b4e41da31e868d57226121c84", hopefullysha256('hello, world');// "09ca7e4eaa6e8ae9c7d261167129184883644d07dfba7cbfbc4c8a2e08360d5b", hopefullyThe following styles should also all work, but may be less-friendly to tree-shaking:
constmd5=require('tiny-hashes/md5');constsha1=require('tiny-hashes/sha1');constsha256=require('tiny-hashes/sha256');import{md5,sha1,sha256}from'tiny-hashes';const{ md5, sha1, sha256 }=require('tiny-hashes');Please don't use this if you absolutely rely on it being correct. There are more solid solutions out there.
Please also don't use this server-side in Node.js - the crypto build-in module exists for a reason.
Basically only use this if you want a super-duper-tiny hash function in the browser that you can be about 99% sure is correct and should always be self-consistent.