{"_id":"@dlcaio/discord-logger","_rev":"10-f66c9e7639a58100d18719945f859327","name":"@dlcaio/discord-logger","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"name":"@dlcaio/discord-logger","version":"1.0.0","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.0.0","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"dist":{"shasum":"bc5f7488ac7032c6c8126203ff66ef074af50fee","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.0.0.tgz","fileCount":5,"integrity":"sha512-a+0Htb96rwBpsbQPMY3SqoKwTYucV290Mct1bL/Fpncex3Jhxi3SuQhP46PTQNuJT1vFdh9ivHM8rku/f1nFIw==","signatures":[{"sig":"MEUCIDoYPi7HQLzLagXwa0BYOi5WFIZrrKMMbY6hd1X+YnfiAiEAz5p7JJT7FmNL1cRxHK4lXR96D47liyiqC6wEQcjokxE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5582},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"_npmVersion":"9.7.2","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.0.0_1751799623891_0.9330681390894084","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@dlcaio/discord-logger","version":"1.0.1","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.0.1","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"dist":{"shasum":"76ac2eb2f8e8c679662261870a5cf3a99e0b060a","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.0.1.tgz","fileCount":6,"integrity":"sha512-lnbbgBt/0+NmfKAioMW+CVW6ZC/NkqSsMc5SNWONpOcDYZdl2K/9BZnjIdWCB4tSbOo0aCBUFzxIl8QQtyqBKQ==","signatures":[{"sig":"MEQCID7jVklKBGj5o2UB9ktmSyQcHUsu/Z8BLk8s275EnuSyAiBv4r/ELkLTrP9FvVVDZLWbmXwcWDWYjV7nZtaiVxteWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6797},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.0.1_1751810233709_0.7624630926815144","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dlcaio/discord-logger","version":"1.1.0","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.1.0","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"dist":{"shasum":"b04061ce2f44465321bc4a6e7525f66c34659739","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.1.0.tgz","fileCount":6,"integrity":"sha512-xvoRIrMzwVCiBCnI/HrG4NwyDBUcjI+yHl6bbZ+jTAv3cye9FW2ifIkFL95fxq1GDVsAxuMG+W2IcfOGg8dcbQ==","signatures":[{"sig":"MEYCIQDvr32kkj3d5dUACxRUx0pFl8GhzhfrrY3f9OVQ9ZS38AIhAL2+oNbr1MLXrMgK2wWJgI9JuR6Po2VsJkCd9dAEugCi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6818},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.1.0_1751810304295_0.49015748281229143","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@dlcaio/discord-logger","version":"1.1.1","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.1.1","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"dist":{"shasum":"4dd7d30eee155300222c6d97907767e123f03b5a","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.1.1.tgz","fileCount":6,"integrity":"sha512-XU6WBjX0qxEaeMdcIiJA7ymQUr7TQxx8ykmZVBlDhrvEKHKknj3xv+Co3sXvRFRMISWvgEU1pjbsrX316vlRFw==","signatures":[{"sig":"MEUCIQDFWcdTbTQ3zFeFG8VqzNSHQnAQKbSY08PwMrrGc9kTRQIgHrlhGeIv1bRXx5PM21ebzKwVDO72AF2ohkGKatcGhao=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6828},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.1.1_1751810398340_0.794908639450792","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@dlcaio/discord-logger","version":"1.1.2","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.1.2","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"dist":{"shasum":"3487b8a978cd83a576b603122beec31f280d5cb7","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.1.2.tgz","fileCount":6,"integrity":"sha512-M26rHVSuZfowGTJMz5IkgwtKp7P7PbUPEhpxnR9iWt+tDj/VwL+WHWyspTKfDgu1/VpC2mth07modXtvYD7wrQ==","signatures":[{"sig":"MEQCIAUfPUO7v/KlZc4ZJDmIS8zzItnmoU2GZVf+MIX0uAshAiAFMrLVkPSr51SwbKVmNO9oJyhpmUepW3863/PBsxsyjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6815},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.1.2_1751810453445_0.5454857094290999","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@dlcaio/discord-logger","version":"1.1.3","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.1.3","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"homepage":"https://github.com/dlcaio/discord-logger#readme","bugs":{"url":"https://github.com/dlcaio/discord-logger/issues"},"dist":{"shasum":"07ef289b386bae02a0d1e71e60dc5f648d25971a","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.1.3.tgz","fileCount":6,"integrity":"sha512-P+RFk1MWC9kJDSIsesZoG7veJVI8iAxwxJ7DuXdR/qaiLpE8xB95/tFWr2LWNuo5OmqB+WqxHVVJWaEyHqgslg==","signatures":[{"sig":"MEQCIHEw9/uiWWIOYaDqw1vJ5xJ5MrbIi6HMzkr9Q1f43s4nAiAd4ogBGYHEAKDBWqgtNkUKl5AMWDcibYOGRstmxOqAWQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6911},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"970c0412ffdc70b7e28cf830ade16e5851cab865","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"repository":{"url":"git+https://github.com/dlcaio/discord-logger.git","type":"git"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.1.3_1751810892839_0.7976671021384776","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@dlcaio/discord-logger","version":"1.2.0","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.2.0","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"homepage":"https://github.com/dlcaio/discord-logger#readme","bugs":{"url":"https://github.com/dlcaio/discord-logger/issues"},"dist":{"shasum":"99f0f2e35a03271f22027cfdc8df491ad5dcf348","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.2.0.tgz","fileCount":6,"integrity":"sha512-1pq3tr5JoMin2mwu9SMPbi4p0tII6cIgFJMF2neFbz4aj/b0j8tmy6TVSxZpE8P7fPIxfixMW8V9+3M1IuIBwg==","signatures":[{"sig":"MEUCIEYRErfsKLdsblHbAgGpaoelU9HvJMfw4YJwvxP23ETkAiEAzTmXi8cMBdKML1qxyNVmKSulzC+YZILnTDdfuwj6CJo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7175},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7af8c0d600309fe87c684c4c6d88b315e9154c2a","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"repository":{"url":"git+https://github.com/dlcaio/discord-logger.git","type":"git"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.2.0_1751966640003_0.484293704714889","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@dlcaio/discord-logger","version":"1.2.1","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.2.1","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"homepage":"https://github.com/dlcaio/discord-logger#readme","bugs":{"url":"https://github.com/dlcaio/discord-logger/issues"},"dist":{"shasum":"c6ee35465a328b9ad7e5fbc6963599191d235228","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.2.1.tgz","fileCount":6,"integrity":"sha512-fc3o96z4oE/1zeXp9Uro6OTjmo207VZ3GzYzHK6xyowTfvoFQO2OvOXQNIYKEpmVcgdTvUuUOq3k/grXB+qJXw==","signatures":[{"sig":"MEUCIQCnEOHHM5xKLA2RWmFpGW5m9AhwuNrv3WiEGGvGWNeU6wIgGm9cxTvCt7PrIBRI7QOJ4PPvyvq9cujJiBMsyCbbP6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7465},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7af8c0d600309fe87c684c4c6d88b315e9154c2a","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","actor":{"name":"dlcaio","type":"user","email":"dellaliberacaio@gmail.com"},"email":"dellaliberacaio@gmail.com"},"repository":{"url":"git+https://github.com/dlcaio/discord-logger.git","type":"git"},"_npmVersion":"9.7.2","description":"README.md","directories":{},"_nodeVersion":"20.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.2.1_1751966847928_0.5349459404326247","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@dlcaio/discord-logger","version":"1.2.2","keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","_id":"@dlcaio/discord-logger@1.2.2","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"homepage":"https://github.com/dlcaio/discord-logger#readme","bugs":{"url":"https://github.com/dlcaio/discord-logger/issues"},"dist":{"shasum":"1f91a5ef930000ca41726339fb76d9a17d5a2b73","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-1.2.2.tgz","fileCount":6,"integrity":"sha512-Dpfv3qdw64smU8hJdZiNWmfQ//6yt8qHxiiXX/btQ4wzOTm1bxWqJg8Lvw+iJXt8qS669bjITySttSmjfLkFrQ==","signatures":[{"sig":"MEQCIARRxQpWAUJsvHT5my+MmrxeSInQA44kWnrWwy0/c0rNAiB+wTgg/xgtVpkewKChgSRWNa20dbLIEbPFX0UePeJn4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7555},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7af8c0d600309fe87c684c4c6d88b315e9154c2a","scripts":{"test":"node test/test.js","build":"tsc"},"_npmUser":{"name":"dlcaio","email":"dellaliberacaio@gmail.com"},"repository":{"url":"git+https://github.com/dlcaio/discord-logger.git","type":"git"},"_npmVersion":"10.8.2","description":"README.md","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/discord-logger_1.2.2_1767102148666_0.0771407946431324","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@dlcaio/discord-logger","version":"2.0.0","description":"A lightweight TypeScript logger that sends structured logs to Discord webhooks.","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","test":"npm run build && node --test","prepublishOnly":"npm test"},"keywords":["discord","logger","typescript","webhook"],"author":{"name":"dlcaio"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/dlcaio/discord-logger.git"},"bugs":{"url":"https://github.com/dlcaio/discord-logger/issues"},"homepage":"https://github.com/dlcaio/discord-logger#readme","engines":{"node":">=18"},"devDependencies":{"@types/node":"^24.0.10","typescript":"^5.8.3"},"gitHead":"7af8c0d600309fe87c684c4c6d88b315e9154c2a","_id":"@dlcaio/discord-logger@2.0.0","_nodeVersion":"20.4.0","_npmVersion":"9.7.2","dist":{"integrity":"sha512-i56dHZZWly4pAOAT6rxwWVuBv3Vqn9i8vCifqUgQ1im0QsQFuhFJBEBhjylaeaWIa2uw9CMIu9jTEVbORcKJwQ==","shasum":"57af02462fede2acc58a572de986361c40466e5c","tarball":"https://registry.npmjs.org/@dlcaio/discord-logger/-/discord-logger-2.0.0.tgz","fileCount":6,"unpackedSize":9863,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDt9oeUtH6PAguO9gMqzvkbI3B1BBCuaWiZu5Wat06RnAiArNBOwxUln5e5graJFLPXtaTxCaWhsC4o01a38Df1Wyg=="}]},"_npmUser":{"name":"dlcaio","email":"dellaliberacaio@gmail.com"},"directories":{},"maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/discord-logger_2.0.0_1783752372857_0.7690011581177016"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-06T11:00:23.785Z","modified":"2026-07-11T06:46:13.088Z","1.0.0":"2025-07-06T11:00:24.111Z","1.0.1":"2025-07-06T13:57:13.935Z","1.1.0":"2025-07-06T13:58:24.463Z","1.1.1":"2025-07-06T13:59:58.505Z","1.1.2":"2025-07-06T14:00:53.635Z","1.1.3":"2025-07-06T14:08:13.008Z","1.2.0":"2025-07-08T09:24:00.177Z","1.2.1":"2025-07-08T09:27:28.128Z","1.2.2":"2025-12-30T13:42:28.873Z","2.0.0":"2026-07-11T06:46:13.005Z"},"bugs":{"url":"https://github.com/dlcaio/discord-logger/issues"},"author":{"name":"dlcaio"},"license":"MIT","homepage":"https://github.com/dlcaio/discord-logger#readme","keywords":["discord","logger","typescript","webhook"],"repository":{"type":"git","url":"git+https://github.com/dlcaio/discord-logger.git"},"description":"A lightweight TypeScript logger that sends structured logs to Discord webhooks.","maintainers":[{"name":"dlcaio","email":"dellaliberacaio@gmail.com"}],"readme":"# Discord Logger\n\nA lightweight TypeScript logger that sends structured logs to Discord webhooks. It supports separate routing for errors, optional console output, and has no runtime dependencies.\n\n[![npm version](https://img.shields.io/npm/v/@dlcaio/discord-logger?style=flat-square)](https://www.npmjs.com/package/@dlcaio/discord-logger)\n[![CI](https://github.com/dlcaio/discord-logger/actions/workflows/ci.yml/badge.svg)](https://github.com/dlcaio/discord-logger/actions/workflows/ci.yml)\n[![license](https://img.shields.io/npm/l/@dlcaio/discord-logger?style=flat-square)](LICENSE)\n\n## Features\n\n- `info`, `warn`, `error`, and `debug` log levels\n- Optional console output\n- Custom webhook username and avatar\n- Optional dedicated webhook for error logs\n- Promise-based delivery with HTTP error and timeout reporting\n- Zero runtime dependencies\n\n## Installation\n\n```bash\nnpm install @dlcaio/discord-logger\n```\n\n## Usage\n\n```ts\nimport { DiscordLogger } from \"@dlcaio/discord-logger\";\n\nconst logger = new DiscordLogger({\n  webhookUrl: \"https://discord.com/api/webhooks/WEBHOOK_ID/TOKEN\",\n  errorWebhookUrl: \"https://discord.com/api/webhooks/ERROR_WEBHOOK_ID/TOKEN\",\n  username: \"My Logger Bot\",\n  avatarUrl: \"https://example.com/icon.png\",\n  enableConsole: true,\n});\n\nawait logger.info(\"Application started\");\nawait logger.warn(\"A dependency is responding slowly\");\nawait logger.error(\"Something went wrong\");\nawait logger.debug(\"Debug information\");\n```\n\nEach logging method returns a `Promise<void>`. Await it when delivery matters and handle failures as appropriate for your application:\n\n```ts\ntry {\n  await logger.error(\"Payment processing failed\");\n} catch (error) {\n  console.error(\"Could not deliver the Discord log\", error);\n}\n```\n\n## Options\n\n| Option | Type | Required | Default | Description |\n| --- | --- | --- | --- | --- |\n| `webhookUrl` | `string` | Yes | — | HTTPS webhook used for all logs by default. |\n| `errorWebhookUrl` | `string` | No | — | Dedicated HTTPS webhook for `error` logs. |\n| `username` | `string` | No | `\"Logger\"` | Username displayed by Discord. |\n| `avatarUrl` | `string` | No | — | Avatar displayed by Discord. |\n| `enableConsole` | `boolean` | No | `true` | Also write messages to the local console. |\n| `requestTimeoutMs` | `number` | No | `10000` | Time before a webhook request is aborted. |\n\n## Development\n\n```bash\nnpm ci\nnpm test\n```\n\n`npm test` builds the package and runs the test suite without contacting Discord.\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}