{"id":18075766,"url":"https://github.com/tsledger/ledger","last_synced_at":"2026-05-06T19:34:58.069Z","repository":{"id":258014458,"uuid":"866816026","full_name":"TSLedger/ledger","owner":"TSLedger","description":"(Unstable/Alpha) Batteries-included TypeScript-first Logging Framework on JSR. Compatible with Deno and Node.js","archived":false,"fork":false,"pushed_at":"2025-03-20T14:15:02.000Z","size":432,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T11:48:00.865Z","etag":null,"topics":["deno","jsr","logging","nodejs","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TSLedger.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-02T23:27:01.000Z","updated_at":"2025-03-20T14:14:53.000Z","dependencies_parsed_at":"2024-10-25T00:07:26.073Z","dependency_job_id":"fb67eb61-4d2d-4c10-9aec-f224f4da21c6","html_url":"https://github.com/TSLedger/ledger","commit_stats":null,"previous_names":["tsledger/ledger"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TSLedger%2Fledger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TSLedger%2Fledger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TSLedger%2Fledger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TSLedger%2Fledger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TSLedger","download_url":"https://codeload.github.com/TSLedger/ledger/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393539,"owners_count":20931809,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deno","jsr","logging","nodejs","typescript"],"created_at":"2024-10-31T11:07:14.133Z","updated_at":"2025-12-12T17:08:53.891Z","avatar_url":"https://github.com/TSLedger.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg style=\"border-radius=50%\" height=\"150\" src=\"./.github/asset/cover_base.png\"\u003e\n\u003c/p\u003e\n\n## What is Ledger?\n\n\u003e [!CAUTION]\n\u003e This Library is a Work in Progress and is NOT ready for production use. APIs are subject to change and breakage.\n\nWelcome to Ledger, a batteries-included TypeScript-first Logging Framework on JSR. Compatible with Deno and Node.js. Themed to a Ledger of Records\n\nLedger provides the structure to create or utilize a Handler to process loggable events. These transports can range from stdout, file-backed, or even pure HTTP Requests for any vendor. Anything that is possible with in TypeScript is possible to do in Ledger.\n\n## What is a Handler?\n\nA Ledger Handler is simply a managed worker instance that receives a payload from the Ledger API. You can leverage an infinite amount of Handlers all working side-by-side. You can utilize pre-built Handlers or publish one you create.\n\nWe recommend publishing Handlers to JSR.\n\nFeatures:\n\n- Handlers using a Worker reduces the burden of Event Loop and enables async functionality.\n- Handlers will automatically restore in the event of a critical failure.\n\n## Getting Started\n\nIf you are ready to give Ledger a try, you can get started with a snippet such as the below:\n\n```ts\nimport { Ledger } from 'jsr:@ledger/ledger';\n\n// Initialize Ledger\nconst ledger = new Ledger({\n  useAsyncDispatchQueue: true, //  or false for ImmediateDispatch mode.\n});\n// Register a Handler. You can chain these too!\nledger.register({\n  definition: 'jsr:@ledger/console-handler@0.0.0', // Version is Important. Please verify the latest version. See: https://jsr.io/@ledger for official handlers.\n});\n\n// Await Ledger to be alive and functional.\nawait ledger.alive();\n\n// ledger.trace, ledger.information, ledger.warning, ledger.severe\nledger.information('Hello, world');\n\n// Eventually...\nledger.terminate();\n```\n\n## Additional Documentation\n\nPlease visit the JSR Symbol Documentation at [JSR Docs](https://jsr.io/@ledger/ledger/doc) or the [GitHub Wiki](https://github.com/TSLedger/ledger/wiki) for additional examples and handler documentation.\n\n## Support\n\nPlease use GitHub [Issues](https://github.com/TSLedger/ledger/issues) or [Discussions](https://github.com/TSLedger/ledger/discussions).\n\n## Acknowledgements\n\n[pinojs/pino](https://github.com/pinojs/pino) - Foundational Model and Worker Concepts\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsledger%2Fledger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsledger%2Fledger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsledger%2Fledger/lists"}