{"_id":"@adz946/true-name","_rev":"2-5410815fa1b936d59fe164afc413823e","name":"@adz946/true-name","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@adz946/true-name","version":"1.0.0","keywords":["validation","name","regex","form"],"author":{"name":"Adam Saleh"},"license":"MIT","_id":"@adz946/true-name@1.0.0","maintainers":[{"name":"adz946","email":"Adsaleh946@gmail.com"}],"homepage":"https://github.com/Adz946/true-name-js#readme","bugs":{"url":"https://github.com/Adz946/true-name-js/issues"},"dist":{"shasum":"3b39ccfe526007d4eba3a957b2a237b64365bc9e","tarball":"https://registry.npmjs.org/@adz946/true-name/-/true-name-1.0.0.tgz","fileCount":7,"integrity":"sha512-TUFxbIdXry66BKvwH4M7O2giU3AD3fKFBHmGkBM7Oqx2BLdYoJM1zR7hbvZkuaDh+psTl2YjnpNDlZKgIsMZtQ==","signatures":[{"sig":"MEQCIC0eA3m+FJ+1cLEP7LloDU5qFgH/TTrVqH6O/euCvPQaAiAsWCDJSz5d6hUAIMZQsMWCuhbCvMjku+itgF16NGbHBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6358},"main":"src/validateName.js","gitHead":"5220b10012feb0f613ffb85105c5b9d43163589b","scripts":{"test":"node ./test/testRunner.js"},"_npmUser":{"name":"adz946","email":"Adsaleh946@gmail.com"},"repository":{"url":"git+https://github.com/Adz946/true-name-js.git","type":"git"},"_npmVersion":"10.9.2","description":"A modular, human-aware, real-world-friendly name validator for JavaScript projects.","directories":{"src":"src","test":"test"},"_nodeVersion":"23.11.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/true-name_1.0.0_1746016956610_0.6728687380825615","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@adz946/true-name","version":"1.0.1","description":"A modular, human-aware, real-world-friendly name validator for JavaScript projects.","main":"src/validateName.js","directories":{"src":"src","test":"test"},"scripts":{"test":"node ./test/testRunner.js"},"repository":{"type":"git","url":"git+https://github.com/Adz946/true-name-js.git"},"keywords":["validation","name","regex","form"],"author":{"name":"Adam Saleh"},"license":"MIT","bugs":{"url":"https://github.com/Adz946/true-name-js/issues"},"homepage":"https://github.com/Adz946/true-name-js#readme","_id":"@adz946/true-name@1.0.1","gitHead":"75dfd8f3d54eeb5dd304e299d70528f625924dae","_nodeVersion":"23.11.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-smPEFPzJ8CejsovdwX8ocJcEix9uVZ3jn4JelGnA1qCWzDK/9nAg8D1ankAvMQp/CcfVxubUpWfhj0L7Sy9ZNg==","shasum":"54cd95de51ea905c00efd68abd21969b67345bcc","tarball":"https://registry.npmjs.org/@adz946/true-name/-/true-name-1.0.1.tgz","fileCount":7,"unpackedSize":6288,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGYkxyzU3Zu0JMtlOphaRYeqlab8ds7DBif3ltuJtYIeAiEA1LScHFqHqKzWxzaxKpNGUG08/FUaU+AKcfIhJlcP4t8="}]},"_npmUser":{"name":"adz946","email":"Adsaleh946@gmail.com"},"maintainers":[{"name":"adz946","email":"Adsaleh946@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/true-name_1.0.1_1746017345873_0.8040948012665994"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-30T12:42:36.530Z","modified":"2025-04-30T12:49:06.350Z","1.0.0":"2025-04-30T12:42:36.800Z","1.0.1":"2025-04-30T12:49:06.172Z"},"bugs":{"url":"https://github.com/Adz946/true-name-js/issues"},"author":{"name":"Adam Saleh"},"license":"MIT","homepage":"https://github.com/Adz946/true-name-js#readme","keywords":["validation","name","regex","form"],"repository":{"type":"git","url":"git+https://github.com/Adz946/true-name-js.git"},"description":"A modular, human-aware, real-world-friendly name validator for JavaScript projects.","maintainers":[{"name":"adz946","email":"Adsaleh946@gmail.com"}],"readme":"# true-name-js\r\n\r\n[![npm version](https://img.shields.io/npm/v/@adz946/true-name)](https://www.npmjs.com/package/@adz946/true-name)\r\n[![npm downloads](https://img.shields.io/npm/dm/@adz946/true-name)](https://www.npmjs.com/package/@adz946/true-name)\r\n\r\nA modular, human-aware, real-world-friendly name validator for JavaScript and Node.js.\r\n\r\n---\r\n\r\n## ✅ Features\r\n\r\n- ✅ Accepts real names with:\r\n  - Initials (up to 2 max)\r\n  - Accents (e.g., \"Élodie\", \"Lémieux\")\r\n  - Hyphens (e.g., \"Jean-Pierre\")\r\n  - Apostrophes (e.g., \"O'Neill\", \"Mac'Donald\")\r\n- ❌ Rejects:\r\n  - Invalid symbols (`!@#`) or digits\r\n  - Triple-compound, nonsense, or malformed structures\r\n  - Fake, partial, or malformed initials\r\n\r\n---\r\n\r\n## 🔌 Installation\r\n\r\n```bash\r\nnpm install @adz946/true-name\r\n```\r\n\r\n---\r\n\r\n## 🚀 Usage\r\n\r\n```js\r\nimport { isValidFullName } from '@adz946/true-name';\r\n\r\nisValidFullName(\"John Smith\");                  // true\r\nisValidFullName(\"J. R. R.\");                     // false (too many initials)\r\nisValidFullName(\"Anna-Marie O'Neill\");          // true\r\nisValidFullName(\"X Æ A-12\");                     // false (invalid structure)\r\n```\r\n\r\n---\r\n\r\n## 🧪 Run Tests\r\n\r\nA curated test suite is available in the `/test` folder.\r\n\r\n```bash\r\nnpm test\r\n```\r\n\r\nYou’ll see output like:\r\n\r\n```\r\nTest Name                   | Ex. | Ac. | Notes\r\n------------------------------------------------------------\r\nJohn Smith                 | ✅  | ✅  | N/A\r\nJ. R. R.                   | ❌  | ❌  | N/A\r\n...\r\n```\r\n\r\n---\r\n\r\n## 📂 Structure\r\n\r\n```\r\ntrue-name-js/\r\n├── src/\r\n│   └── validateName.js      # Main exported validator\r\n├── test/\r\n│   ├── testCases.js         # Test data (names + expected result)\r\n│   └── testRunner.js        # CLI output formatter\r\n└── README.md\r\n```\r\n\r\n---\r\n\r\n## 📜 License\r\n\r\nMIT — use freely, improve freely, but don’t pretend you wrote it all by yourself 😉\r\n","readmeFilename":"ReadMe.md"}