checkmoji
TypeScript icon, indicating that this package has built-in type declarations

0.0.1ย โ€ขย Publicย โ€ขย Published

checkmoji

๐Ÿฆฅ checksum but it's emoji

  • Supports a whopping 1024 different emojis
  • Configurable length of up to 26 emoji-characters (default: 26)
  • Uses blake2b for hashing under the hood

Installation

$ npm install checkmoji

Usage

import { checkmoji } from "./checkmoji";

// Example 1: Only 1 bit has changed for the input,
// but the output is very different:

// Yields "๐Ÿ“ ๐Ÿ‡ถ๐Ÿ‡ฆ๐Ÿ”ต๐ŸŽต๐Ÿ‡ฑ๐Ÿ‡ฎ๐ŸŽŸ๏ธ๐Ÿ‡ง๐Ÿ‡พ๐Ÿ‘Š๐ŸŒฅ๏ธ๐Ÿ‡ฏ๐Ÿ‡ช๐Ÿ–Œ๏ธ๐Ÿ‡น๐Ÿ‡ฟ๐Ÿ†š๐ŸŒˆ๐Ÿ‡ท๐Ÿ‡ด๐Ÿ‡ฒ๐Ÿ‡ฒ๐Ÿ‡ญ๐Ÿ‡ฒ๐Ÿ‡บ๐Ÿ‡พ๐Ÿ’…๐Ÿ๏ธ๐Ÿ‘ฉโ€๐Ÿš’๐Ÿ‘‰๐Ÿ‡ป๐Ÿ‡ช๐Ÿฅ๐Ÿ‡จ๐Ÿ‡ฆ๐Ÿน"
console.log(checkmoji("a"));
// Yields "๐Ÿ‡ฐ๐Ÿ‡ฌ๐Ÿ•Ž๐Ÿ“•๐Ÿœ๐Ÿ‘ฃ๐Ÿ–๏ธ๐Ÿ‡ฎ๐Ÿ‡ธ๐Ÿœ๐Ÿ‡จ๐Ÿ‡ป๐ŸŠ๐Ÿ‘ฉโ€๐Ÿซ๐Ÿ‘จโ€๐Ÿซ๐Ÿ€„๐Ÿ‡ฆ๐Ÿ‡จ๐Ÿ‡จ๐Ÿ‡ฟ๐Ÿ”ฃ๐Ÿ‘ฉโ€๐Ÿ’ผ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง๐Ÿด๐Ÿ”ป๐Ÿ‘ฉโ€โš–๏ธ๐Ÿƒโ€โ™‚๏ธ๐Ÿ”๐Ÿ•น๏ธ๐ŸŽ†๐ŸŽ’"
console.log(checkmoji("b"));

// Example 2: Setting the length of the checksum, will return the same checksum,
// but with a different length (like in git):

// Yields 26 characters "๐Ÿ…พ๏ธ๐Ÿ”ฅ๐Ÿ‡ฌ๐Ÿ‡ต๐Ÿ”•๐Ÿ—๏ธ๐Ÿญ๐Ÿ‘จโ€โœˆ๏ธ๐Ÿ”ช๐Ÿ‘จโ€๐ŸŒพ๐Ÿ’๐Ÿ’‹๐Ÿ“ž๐Ÿ‡ง๐Ÿ‡ฎ๐ŸŒœ๐Ÿ’…๐Ÿ†—๐Ÿ‘ฎ๐Ÿ…๐Ÿ™๐ŸŒ๏ธโ€โ™‚๏ธ๐Ÿ’ถ๐Ÿ“๐Ÿ‡ง๐Ÿ‡ฏ๐Ÿ‡น๐Ÿ‡ฐ๐Ÿ‘ฏโ€โ™€๏ธ๐Ÿ•‹"
console.log(checkmoji("hello, world"));
// Yields 8 characters "๐Ÿ…พ๏ธ๐Ÿ”ฅ๐Ÿ‡ฌ๐Ÿ‡ต๐Ÿ”•๐Ÿ—๏ธ๐Ÿญ๐Ÿ‘จโ€โœˆ๏ธ๐Ÿ”ช"
console.log(checkmoji("hello, world", 8));

Note

While the character count of two checksums are the same, the actual amount of bytes used for the characters is not guaranteed. This is because each emoji can vary in size.

Package Sidebar

Install

npm i checkmoji

Weekly Downloads

1

Version

0.0.1

License

MIT

Unpacked Size

20.4 kB

Total Files

10

Last publish

Collaborators

  • paleite