{"_id":"@boltsocial/hurricane","_rev":"3-5b5d8b84b392e6636c459575a8f420bb","name":"@boltsocial/hurricane","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@boltsocial/hurricane","version":"0.1.0","_id":"@boltsocial/hurricane@0.1.0","maintainers":[{"name":"minhguyen","email":"minh@navium.io"}],"dist":{"shasum":"05d654a536241139077b6c95f49eaf74a6654aa7","tarball":"https://registry.npmjs.org/@boltsocial/hurricane/-/hurricane-0.1.0.tgz","fileCount":5,"integrity":"sha512-GmpynFL7fY1ZdTonN6Ao1leEWDYUqoj7qrcTC8qdR9hUpxO628UmXFSKT2ReiSlyo3hfwzci7VnNljz3P7WB+g==","signatures":[{"sig":"MEUCIQC/kt5mmdNjU1tOLUot1QFijOp3TEvonLgZVf0C1Qku0QIgBOf95w4qChf80QwzZDrZkp7PDrXeCh1zplpFDfBYibU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2754},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"index.ts","gitHead":"0fdf909075e13ca1346835469d6749395ff55757","scripts":{"lint":"eslint","build":"bun build.ts","prepare":"bunx husky","build:declaration":"bunx tsc src/* --emitDeclarationOnly --declaration --noCheck --outDir dist"},"_npmUser":{"name":"minhguyen","email":"minh@navium.io"},"_npmVersion":"10.9.0","description":"> Unique and scalable ID format","directories":{},"lint-staged":{"*.ts":["eslint --fix","prettier --write"]},"_nodeVersion":"23.1.0","dependencies":{"ora":"^8.1.0","chalk":"^5.3.0","figlet":"^1.8.0"},"_hasShrinkwrap":false,"packageManager":"^bun@1.1.33","devDependencies":{"husky":"^9.1.6","eslint":"^9.13.0","globals":"^15.11.0","prettier":"3.3.3","@eslint/js":"^9.13.0","@types/bun":"latest","typescript":"^5.6.3","cli-spinners":"^3.2.0","@types/figlet":"^1.7.0","@commitlint/cli":"^19.5.0","typescript-eslint":"^8.12.2","eslint-config-prettier":"^9.1.0","@commitlint/config-conventional":"^19.5.0"},"_npmOperationalInternal":{"tmp":"tmp/hurricane_0.1.0_1730559464793_0.27627314377047174","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@boltsocial/hurricane","version":"0.1.1","license":"MIT","_id":"@boltsocial/hurricane@0.1.1","maintainers":[{"name":"minhguyen","email":"minh@navium.io"}],"homepage":"https://github.com/boltsocial/hurricane#readme","bugs":{"url":"https://github.com/boltsocial/hurricane/issues"},"dist":{"shasum":"f6b2fbc5e874ef402a6e5e56399259f19b301184","tarball":"https://registry.npmjs.org/@boltsocial/hurricane/-/hurricane-0.1.1.tgz","fileCount":5,"integrity":"sha512-FSj9pH7ZdrwdjXXAb6vqrYqUBZTMTuHFK5WOHVCd0pLhY4s5UuUGuysh5WJzOB1X2fCJR2N5nuQTtuFdai3nsw==","signatures":[{"sig":"MEUCIQCH0q+dFKikwmuZF1TKjmsP1cELgQg7RyAdVIQOwYrEaAIgcsRCmLjlkNoEVPBKEGyX0QzkwPT4NMGKesjDG9Yegx0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@boltsocial%2fhurricane@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3747},"main":"dist/index.js","type":"module","_from":"file:boltsocial-hurricane-0.1.1.tgz","types":"dist/index.d.ts","module":"index.ts","scripts":{"lint":"eslint","build":"bun build.ts","prepare":"bunx husky","build:declaration":"bunx tsc src/* --emitDeclarationOnly --declaration --noCheck --outDir dist"},"_npmUser":{"name":"minhguyen","email":"minh@navium.io"},"_resolved":"/home/runner/work/hurricane/hurricane/boltsocial-hurricane-0.1.1.tgz","_integrity":"sha512-FSj9pH7ZdrwdjXXAb6vqrYqUBZTMTuHFK5WOHVCd0pLhY4s5UuUGuysh5WJzOB1X2fCJR2N5nuQTtuFdai3nsw==","repository":{"url":"git+https://github.com/boltsocial/hurricane.git"},"_npmVersion":"10.9.0","description":"> Unique and scalable ID format","directories":{},"lint-staged":{"*.ts":["eslint --fix","prettier --write"]},"_nodeVersion":"23.1.0","_hasShrinkwrap":false,"packageManager":"^bun@1.1.33","devDependencies":{"ora":"^8.1.0","chalk":"^5.3.0","husky":"^9.1.6","eslint":"^9.13.0","figlet":"^1.8.0","globals":"^15.11.0","prettier":"3.3.3","@eslint/js":"^9.13.0","@types/bun":"latest","typescript":"^5.6.3","cli-spinners":"^3.2.0","@types/figlet":"^1.7.0","@commitlint/cli":"^19.5.0","typescript-eslint":"^8.12.2","eslint-config-prettier":"^9.1.0","@commitlint/config-conventional":"^19.5.0"},"_npmOperationalInternal":{"tmp":"tmp/hurricane_0.1.1_1730657915536_0.1439912254634914","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@boltsocial/hurricane","version":"0.1.2","license":"MIT","_id":"@boltsocial/hurricane@0.1.2","maintainers":[{"name":"minhguyen","email":"minh@navium.io"}],"homepage":"https://github.com/boltsocial/hurricane#readme","bugs":{"url":"https://github.com/boltsocial/hurricane/issues"},"dist":{"shasum":"f07cc1bf2c0e5f8346bde7346627cfc95a0b7b1a","tarball":"https://registry.npmjs.org/@boltsocial/hurricane/-/hurricane-0.1.2.tgz","fileCount":5,"integrity":"sha512-LiiRbsQ250nPWd4WeAv/XJlcESji+vGJaYtatBDGSsToM9TOYF5Kb25MquHGdnSk9/N+f5Vn9MQJRu1oMza5pQ==","signatures":[{"sig":"MEQCIFxq8folySVn+CXEiWFd97U+NLF3HWD2YD3Im9H5bSs7AiB0O+g+YosLNXgzyLQrFY/n4QrcmdpB3U8oj8AgvfvBrw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@boltsocial%2fhurricane@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3741},"main":"dist/index.js","type":"module","_from":"file:boltsocial-hurricane-0.1.2.tgz","types":"dist/index.d.ts","module":"index.ts","scripts":{"lint":"eslint","build":"bun build.ts","prepare":"bunx husky","build:declaration":"bunx tsc src/* --emitDeclarationOnly --declaration --noCheck --outDir dist"},"_npmUser":{"name":"minhguyen","email":"minh@navium.io"},"_resolved":"/home/runner/work/hurricane/hurricane/boltsocial-hurricane-0.1.2.tgz","_integrity":"sha512-LiiRbsQ250nPWd4WeAv/XJlcESji+vGJaYtatBDGSsToM9TOYF5Kb25MquHGdnSk9/N+f5Vn9MQJRu1oMza5pQ==","repository":{"url":"git+https://github.com/boltsocial/hurricane.git"},"_npmVersion":"10.9.0","description":"> Unique and scalable ID format","directories":{},"lint-staged":{"*.ts":["eslint --fix","prettier --write"]},"_nodeVersion":"23.1.0","_hasShrinkwrap":false,"packageManager":"^bun@1.1.33","devDependencies":{"ora":"^8.1.0","chalk":"^5.3.0","husky":"^9.1.6","eslint":"^9.13.0","figlet":"^1.8.0","globals":"^15.11.0","prettier":"3.3.3","@eslint/js":"^9.13.0","@types/bun":"latest","typescript":"^5.6.3","cli-spinners":"^3.2.0","@types/figlet":"^1.7.0","@commitlint/cli":"^19.5.0","typescript-eslint":"^8.12.2","eslint-config-prettier":"^9.1.0","@commitlint/config-conventional":"^19.5.0"},"_npmOperationalInternal":{"tmp":"tmp/hurricane_0.1.2_1730659005795_0.005715547879522331","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"@boltsocial/hurricane","version":"0.1.3","main":"dist/index.js","module":"index.ts","repository":{"url":"git+https://github.com/boltsocial/hurricane.git"},"devDependencies":{"@commitlint/cli":"^19.5.0","@commitlint/config-conventional":"^19.5.0","@eslint/js":"^9.13.0","@types/bun":"latest","@types/figlet":"^1.7.0","chalk":"^5.3.0","cli-spinners":"^3.2.0","eslint":"^9.13.0","eslint-config-prettier":"^9.1.0","figlet":"^1.8.0","globals":"^15.11.0","husky":"^9.1.6","ora":"^8.1.0","prettier":"3.3.3","rollup":"^4.25.0","typescript":"^5.6.3","typescript-eslint":"^8.12.2"},"lint-staged":{"*.ts":["eslint --fix","prettier --write"]},"packageManager":"^bun@1.1.33","scripts":{"prepare":"bunx husky","build":"bun build.ts","build:declaration":"bunx tsc src/* --emitDeclarationOnly --declaration --noCheck --outDir dist","lint":"eslint"},"type":"module","types":"dist/index.d.ts","exports":{"import":"./dist/index.js","require":"./dist/index.cjs"},"license":"MIT","_id":"@boltsocial/hurricane@0.1.3","description":"> Unique and scalable ID format","bugs":{"url":"https://github.com/boltsocial/hurricane/issues"},"homepage":"https://github.com/boltsocial/hurricane#readme","_integrity":"sha512-JlTwQx2S332mm2ZqxNXgOu/1O8Kb5lhcPS18VA4b0SMt1Up2oblciWHwcEcJjS2oqhmnBoqxu+p1F1htlmGrjA==","_resolved":"/home/runner/work/hurricane/hurricane/boltsocial-hurricane-0.1.3.tgz","_from":"file:boltsocial-hurricane-0.1.3.tgz","_nodeVersion":"23.1.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-JlTwQx2S332mm2ZqxNXgOu/1O8Kb5lhcPS18VA4b0SMt1Up2oblciWHwcEcJjS2oqhmnBoqxu+p1F1htlmGrjA==","shasum":"fccd254abc89530af296e6d43ebf56b4f4f65430","tarball":"https://registry.npmjs.org/@boltsocial/hurricane/-/hurricane-0.1.3.tgz","fileCount":6,"unpackedSize":4708,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@boltsocial%2fhurricane@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDb6wds62LthplQf2neM7TSERT+jNfk86S0Mcc1gRhhIwIhAOyknc41vC+9qDTLDGoAq7sRX939MpoOSD6WeD03hHU4"}]},"_npmUser":{"name":"minhguyen","email":"minh@navium.io"},"directories":{},"maintainers":[{"name":"minhguyen","email":"minh@navium.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hurricane_0.1.3_1731208566942_0.9892732294436801"},"_hasShrinkwrap":false}},"time":{"created":"2024-11-02T14:57:44.676Z","modified":"2024-11-10T03:16:07.568Z","0.1.0":"2024-11-02T14:57:45.023Z","0.1.1":"2024-11-03T18:18:35.729Z","0.1.2":"2024-11-03T18:36:45.967Z","0.1.3":"2024-11-10T03:16:07.132Z"},"bugs":{"url":"https://github.com/boltsocial/hurricane/issues"},"license":"MIT","homepage":"https://github.com/boltsocial/hurricane#readme","repository":{"url":"git+https://github.com/boltsocial/hurricane.git"},"description":"> Unique and scalable ID format","maintainers":[{"name":"minhguyen","email":"minh@navium.io"}],"readme":"# Hurricane\n\n> Unique and scalable ID format\n\nLike a real hurricane, this ID format is unique across the globe and scalable to any size.\n\n## Installation\n\n```sh\n# npm\nnpm install @boltsocial/hurricane\n# yarn\nyarn add @boltsocial/hurricane\n# pnpm\npnpm add @boltsocial/hurricane\n# bun\nbun install @boltsocial/hurricane\n```\n\n## Usage\n\n```ts\nimport { Hurricane } from \"@boltsocial/hurricane\";\n\nconst idFactory = new Hurricane();\n\nconst id = idFactory.generate();\n\nconsole.log(id.toString());\n```\n\n## Inspiration\n\nThis project is inspired by Twitter(X)'s Snowflake ID format and Sony's Sonyflake.\n\n## Specification\n\n- 64-bit bigint\n- 41 bits for time in 2 milliseconds increments since the custom epoch/origin (Midnight, July 4, 2024)\n- 10 bits for a machine id\n- 12 bits for a sequence number ~ 4096 possible IDs per machine per millisecond\n- 1 bit to reserve for signed int\n","readmeFilename":"README.md"}