{"_id":"@csessh/sochumenh","_rev":"3-e57fe4282cb6c84cfd120df8f796b24b","name":"@csessh/sochumenh","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"@csessh/sochumenh","version":"0.1.0","author":{"name":"agentics-vn"},"license":"MIT","_id":"@csessh/sochumenh@0.1.0","maintainers":[{"name":"csessh","email":"tdo@hjkl.vn"}],"homepage":"https://github.com/agentics-vn/sochumenh-npm#readme","bugs":{"url":"https://github.com/agentics-vn/sochumenh-npm/issues"},"dist":{"shasum":"b632ed70f5540ccafdf6eade9ac6c91357ef9624","tarball":"https://registry.npmjs.org/@csessh/sochumenh/-/sochumenh-0.1.0.tgz","fileCount":9,"integrity":"sha512-0YS3eK0bpz5ioPE5mwPrB+3IbxyArlRIr924XP9RD1Lh78lHPTV9szPqZTRce8DMVE6Vlri78fkZhbxM/qi1KA==","signatures":[{"sig":"MEUCIQCTjzXpGh6l90JnpE5CaLbK7OYcO7Pmtsilq2Z9oYZ0RQIgDzFw4GeR/Tsf6CbWam8PXvnCwKAmfqxIuz8n4bGMrwo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155648},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"9311c73458133038ee8448a214f406f0b689fa3f","scripts":{"test":"vitest run --passWithNoTests","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"csessh","email":"tdo@hjkl.vn"},"repository":{"url":"git+https://github.com/agentics-vn/sochumenh-npm.git","type":"git"},"_npmVersion":"11.12.1","description":"Vietnamese Pythagorean numerology (Thần Số Học) engine — pure, zero-dependency TypeScript library.","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sochumenh_0.1.0_1781761223441_0.7999331862945889","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@csessh/sochumenh","version":"0.2.0","author":{"name":"agentics-vn"},"license":"MIT","_id":"@csessh/sochumenh@0.2.0","maintainers":[{"name":"csessh","email":"tdo@hjkl.vn"}],"homepage":"https://github.com/agentics-vn/sochumenh-npm#readme","bugs":{"url":"https://github.com/agentics-vn/sochumenh-npm/issues"},"dist":{"shasum":"ca311cb7a53312c029355c56b34982b12320102e","tarball":"https://registry.npmjs.org/@csessh/sochumenh/-/sochumenh-0.2.0.tgz","fileCount":9,"integrity":"sha512-3DBMsbMYaAub5fM0ELUp//asm3kRF3tGFhO/n0vpELdUTmw/gvgWBy+AQpWNnD/rhwpCaBaGSoMcJe/xT02a4A==","signatures":[{"sig":"MEYCIQCv0zZvZyE4AzcMIQKxpffwBAzruJfucA4ooB11DzE7sgIhAJTb/gNgozwPgIVfnrWwgSVo5BYE+sn58OYiadFv4jTD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":166543},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"9482d1e5b4b4336ea86f1948f8b2e8710cdef235","scripts":{"test":"vitest run --passWithNoTests","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"csessh","email":"tdo@hjkl.vn"},"repository":{"url":"git+https://github.com/agentics-vn/sochumenh-npm.git","type":"git"},"_npmVersion":"11.11.0","description":"Vietnamese Pythagorean numerology (Thần Số Học) engine — pure, zero-dependency TypeScript library.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sochumenh_0.2.0_1782977137879_0.5715068387968616","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@csessh/sochumenh","version":"0.3.0","description":"Vietnamese Pythagorean numerology (Thần Số Học) engine — pure, zero-dependency TypeScript library.","license":"MIT","author":{"name":"agentics-vn"},"repository":{"type":"git","url":"git+https://github.com/agentics-vn/sochumenh-npm.git"},"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"engines":{"node":">=18"},"publishConfig":{"access":"public"},"scripts":{"build":"tsup","test":"vitest run --passWithNoTests","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"devDependencies":{"@types/node":"^22.0.0","tsup":"^8.3.0","typescript":"^5.6.0","vitest":"^2.1.0"},"gitHead":"11c09e7ac830e188c3251a8f6a3ae5245010bc0b","_id":"@csessh/sochumenh@0.3.0","bugs":{"url":"https://github.com/agentics-vn/sochumenh-npm/issues"},"homepage":"https://github.com/agentics-vn/sochumenh-npm#readme","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-scB6AoRzYyhtx//2ccMPQqGUAPvZP4j65LKeXUOfubXF4HMvI1fzZ/fCAhoj3EjMw6TcjchoIM0bwtYxOlU2CA==","shasum":"0b0b74e22a8b7c602299ebf478b17af3573075d5","tarball":"https://registry.npmjs.org/@csessh/sochumenh/-/sochumenh-0.3.0.tgz","fileCount":9,"unpackedSize":171065,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDv99XhHBtPd3xImAL5iOz8IslKkr569lFcZaEigOZPvgIgE40dXSnhfhmnVFB0kIBb8StUitkBcgxoZihfyLfONXc="}]},"_npmUser":{"name":"csessh","email":"tdo@hjkl.vn"},"directories":{},"maintainers":[{"name":"csessh","email":"tdo@hjkl.vn"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sochumenh_0.3.0_1783316377381_0.701268086900346"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-18T05:40:23.272Z","modified":"2026-07-06T05:39:37.620Z","0.1.0":"2026-06-18T05:40:23.618Z","0.2.0":"2026-07-02T07:25:38.040Z","0.3.0":"2026-07-06T05:39:37.526Z"},"bugs":{"url":"https://github.com/agentics-vn/sochumenh-npm/issues"},"author":{"name":"agentics-vn"},"license":"MIT","homepage":"https://github.com/agentics-vn/sochumenh-npm#readme","repository":{"type":"git","url":"git+https://github.com/agentics-vn/sochumenh-npm.git"},"description":"Vietnamese Pythagorean numerology (Thần Số Học) engine — pure, zero-dependency TypeScript library.","maintainers":[{"name":"csessh","email":"tdo@hjkl.vn"}],"readme":"# @csessh/sochumenh\n\nVietnamese Pythagorean numerology (\"Thần Số Học\") engine — pure, zero-runtime-dependency TypeScript library.\n\n## Install\n\n```bash\nnpm install @csessh/sochumenh\n```\n\n## Usage\n\n```typescript\nimport { calculateReport } from '@csessh/sochumenh';\n\nconst report = calculateReport('Nguyen Van A', '15-03-1990');\nconsole.log(report.indexes.length);   // 20\nconsole.log(report.karmicDebt);       // array of numbers from {13,14,16,19}\nconsole.log(report.indexes[0]);\n// { id: \"1\", name: \"lifePath\", title_vn: \"Đường đời\", value: <number>, ... }\n```\n\nDOB format: `DD-MM-YYYY`. Invalid input returns the metadata catalog with no values populated and `karmicDebt: []`.\n\n### Example output\n\n`calculateReport('Nguyen Van A', '15-03-1990')` returns (Vietnamese `description` strings elided for brevity):\n\n```json\n{\n  \"indexes\": [\n    { \"id\": \"1\",  \"name\": \"lifePath\",               \"title_vn\": \"Đường đời\",              \"title_en\": \"Life Path\",              \"type\": \"MAIN\",      \"value\": 1 },\n    { \"id\": \"2\",  \"name\": \"birthDay\",               \"title_vn\": \"Năng lực tự nhiên\",       \"title_en\": \"Birth Day\",              \"type\": \"MAIN\",      \"value\": 6 },\n    { \"id\": \"3\",  \"name\": \"attitude\",               \"title_vn\": \"Thái độ\",                \"title_en\": \"Attitude\",               \"type\": \"MAIN\",      \"value\": 9 },\n    { \"id\": \"4\",  \"name\": \"expression\",             \"title_vn\": \"Sứ mệnh\",                \"title_en\": \"Expression\",             \"type\": \"MAIN\",      \"value\": 7 },\n    { \"id\": \"5\",  \"name\": \"soulUrge\",               \"title_vn\": \"Linh hồn\",               \"title_en\": \"Soul Urge\",              \"type\": \"MAIN\",      \"value\": 1 },\n    { \"id\": \"6\",  \"name\": \"personality\",            \"title_vn\": \"Nhân cách\",              \"title_en\": \"Personality\",            \"type\": \"MAIN\",      \"value\": 33 },\n    { \"id\": \"7\",  \"name\": \"karmicDebtNumber\",       \"title_vn\": \"Nợ Nghiệp\",              \"title_en\": \"Karmic Debt\",            \"type\": \"SECONDARY\", \"value\": \"19\" },\n    { \"id\": \"8\",  \"name\": \"expressionChallenge\",    \"title_vn\": \"Thử thách Sứ mệnh\",       \"title_en\": \"Expression Challenge\",   \"type\": \"SECONDARY\", \"value\": 2 },\n    { \"id\": \"9\",  \"name\": \"soulChallenge\",          \"title_vn\": \"Thử thách Linh hồn\",      \"title_en\": \"Soul Urge Challenge\",    \"type\": \"SECONDARY\", \"value\": 2 },\n    { \"id\": \"10\", \"name\": \"personalityChallenge\",   \"title_vn\": \"Thử thách Nhân cách\",     \"title_en\": \"Personality Challenge\",  \"type\": \"SECONDARY\", \"value\": 0 },\n    { \"id\": \"11\", \"name\": \"maturity\",               \"title_vn\": \"Trưởng thành\",           \"title_en\": \"Maturity\",               \"type\": \"SECONDARY\", \"value\": 8 },\n    { \"id\": \"12\", \"name\": \"maturityCapacity\",       \"title_vn\": \"Năng lực Trưởng thành\",   \"title_en\": \"Maturity capacity\",      \"type\": \"SECONDARY\", \"value\": 6 },\n    { \"id\": \"13\", \"name\": \"thinkingCapacity\",       \"title_vn\": \"Năng Lực Tư duy\",        \"title_en\": \"Thinking capacity\",      \"type\": \"SECONDARY\", \"value\": 2 },\n    { \"id\": \"14\", \"name\": \"adversityResilience\",    \"title_vn\": \"Năng Lực Vượt Khó\",      \"title_en\": \"Ability to overcome difficulties\", \"type\": \"SECONDARY\", \"value\": 1 },\n    { \"id\": \"15\", \"name\": \"missingNumber\",          \"title_vn\": \"Số thiếu\",               \"title_en\": \"Missing Number\",         \"type\": \"SECONDARY\", \"value\": \"2,6,8,9\" },\n    { \"id\": \"16\", \"name\": \"accessibilityCapacity\",  \"title_vn\": \"Năng Lực Tiếp cận\",      \"title_en\": \"Accessibility capacity\", \"type\": \"OTHER\",     \"value\": 1 },\n    { \"id\": \"17\", \"name\": \"accessibilityAttitude\",  \"title_vn\": \"Thái độ Tiếp cận\",       \"title_en\": \"Accessibility Attitude\", \"type\": \"OTHER\",     \"value\": 0 },\n    { \"id\": \"18\", \"name\": \"accessibilityMotivation\",\"title_vn\": \"Động lực tiếp cận\",     \"title_en\": \"Accessibility motivation\",\"type\": \"OTHER\",    \"value\": 1 },\n    { \"id\": \"19\", \"name\": \"hiddenPassion\",          \"title_vn\": \"Đam mê tiềm ẩn\",         \"title_en\": \"Hidden Passion\",         \"type\": \"SECONDARY\", \"value\": 5 },\n    { \"id\": \"20\", \"name\": \"balance\",                \"title_vn\": \"Cân bằng\",               \"title_en\": \"Balance\",                \"type\": \"SECONDARY\", \"value\": 1 }\n  ],\n  \"karmicDebt\": [19]\n}\n```\n\n## Granular API\n\nYou can also call individual calculators directly. They return `{ value, karmicDebtHits }`:\n\n```typescript\nimport { lifePath, expression, missingNumber, hiddenPassion, balance, parseDob } from '@csessh/sochumenh';\n\nconst dob = parseDob('15-03-1990');\nif (dob) console.log(lifePath(dob).value);\nconsole.log(expression('NGUYEN VAN A').value);\nconsole.log(missingNumber('NGUYEN VAN A')); // \"2,6,8,9\" — comma-joined digits 1-9 not present in the name\nconsole.log(hiddenPassion('NGUYEN VAN A').value); // most-frequent Pythagorean digit; ties → smallest digit\nconsole.log(balance('NGUYEN THI HONG').value);   // reduced sum of the initials' Pythagorean values\n```\n\n## Exports\n\n- `calculateReport(name, dob)` — one-call report (recommended entry point).\n- Main: `lifePath, birthDay, attitude, expression, soulUrge, personality`.\n- Additional: `expressionChallenge, soulChallenge, personalityChallenge, adversityResilience, thinkingCapacity, maturity, maturityCapacity, missingNumber, hiddenPassion, balance`.\n- Other: `accessibilityCapacity, accessibilityMotivation, accessibilityAttitude`.\n- Validators: `validateName, getName, parseDob`.\n- Vietnamese data: `indexMetadataVi, interpretationsVi`.\n- Types: `Report, NumerologyIndex, DateOfBirth, IndexType`.\n\n## License\n\nMIT.\n","readmeFilename":"README.md"}