{"id":21373182,"url":"https://github.com/nasriyasoftware/logify","last_synced_at":"2026-02-17T15:01:39.225Z","repository":{"id":238579393,"uuid":"794084767","full_name":"nasriyasoftware/Logify","owner":"nasriyasoftware","description":"Logify is a simple and powerful Node.js logging package","archived":false,"fork":false,"pushed_at":"2024-08-17T18:38:26.000Z","size":1151,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-08T12:48:45.423Z","etag":null,"topics":["debugging","error-handling","error-monitoring","logger-middleware","logging","logging-library"],"latest_commit_sha":null,"homepage":"https://nasriya.net","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nasriyasoftware.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-30T12:30:18.000Z","updated_at":"2024-09-12T19:47:32.000Z","dependencies_parsed_at":"2024-06-07T06:26:13.246Z","dependency_job_id":"15e1fc9c-de2a-41f4-965b-77f6f16f7209","html_url":"https://github.com/nasriyasoftware/Logify","commit_stats":null,"previous_names":["nasriyasoftware/logify"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/nasriyasoftware/Logify","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasriyasoftware%2FLogify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasriyasoftware%2FLogify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasriyasoftware%2FLogify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasriyasoftware%2FLogify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nasriyasoftware","download_url":"https://codeload.github.com/nasriyasoftware/Logify/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nasriyasoftware%2FLogify/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29548201,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T14:33:00.708Z","status":"ssl_error","status_checked_at":"2026-02-17T14:32:58.657Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["debugging","error-handling","error-monitoring","logger-middleware","logging","logging-library"],"created_at":"2024-11-22T08:26:06.756Z","updated_at":"2026-02-17T15:01:39.210Z","avatar_url":"https://github.com/nasriyasoftware.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![N|Solid](https://static.wixstatic.com/media/72ffe6_da8d2142d49c42b29c96ba80c8a91a6c~mv2.png)](https://nasriya.net)\n# Logify.\n[![Static Badge](https://img.shields.io/badge/license-Free_(Restricted)-blue)](https://github.com/nasriyasoftware/Logify?tab=License-1-ov-file) ![Repository Size](https://img.shields.io/github/repo-size/nasriyasoftware/Logify.svg) ![Last Commit](https://img.shields.io/github/last-commit/nasriyasoftware/Logify.svg) [![Status](https://img.shields.io/badge/Status-Stable-green.svg)](link-to-your-status-page)\n##### Visit us at [www.nasriya.net](https://nasriya.net).\n\nLogify is a simple and powerful **Node.js** logging package.\n\nMade with ❤️ in **Palestine** 🇵🇸\n\n\u003e [!IMPORTANT]\n\u003e 🌟 **Support Our Open-Source Development!** 🌟\n\u003e We need your support to keep our projects going! If you find our \u003e work valuable, please consider contributing. Your support helps us \u003e continue to develop and maintain these tools.\n\u003e \n\u003e **[Click here to support us!](https://fund.nasriya.net/)**\n\u003e \n\u003e Every contribution, big or small, makes a difference. Thank you for \u003e your generosity and support!\n___\n### Installation\n```shell\nnpm i @nasriya/logify\n```\n\n### Importing\nImport in **ES6** module\n```ts\nimport logify from '@nasriya/logify';\n```\n\nImport in **CommonJS (CJS)**\n```js\nconst logify = require('@nasriya/logify').default;\n```\n\n### Configuration\nYou can configure the `logify` instance to suite your needs. Here's how you can configure it:\n\n```ts\nlogify.config({\n    /**The name of the running service or process. Default: `process.pid` */\n    service: 'myTestApp',\n    /**Set different handlers for more robust error handling */\n    handlers: {\n        uncaughtException: (error: Error, origin) =\u003e {\n            // handle uncought exeptions; for example:\n            logify.log(error); // Logs the error\n        }\n    },\n    /**An absolute path to the directory where you want the logs to be stored at. Default: The project directory. */\n    logLocation: `\\\\\\\\10.0.0.217\\\\Dev\\\\myTestApp` // A network location or a local directory\n})\n```\n\n**Note:** All configurations are optional.\n___\n### Usage\nHere are some examples as of how to use the **Logify** package.\n\n###### Throw an error\nWhenever needed, you can throw a new `AppError`. Errors created from this class are automatically logged.\n```ts\nthrow new logify.errors.AppError({ message: 'An error has occurred' });\n// ⇨ AppError: An error has occurred\n```\n\nYou can also throw errors with additional data if you want:\n```ts\nthrow new logify.errors.AppError({\n    message: 'Unauthorized user',\n    name: 'HTTP',\n    severity: 'Low'\n});\n\n// ⇨ HTTP: Unauthorized user\n```\n\n**Note:** If you only want to log the error, do **NOT** `throw` the error.\n\n###### Log Incoming Requests\nYou can use predefined middlewares designed for specific server frameworks like [HyperCloud](https://github.com/nasriyasoftware/HyperCloud) or [Express.js](https://github.com/expressjs/express).\n\nThe middlewares can be accessed by:\n```ts\nconst hypercloudMiddleware = logify.middlewares.hypercloud;\nconsole.log(typeof hypercloudMiddleware); // ⇨ function\n```\n###### General Logging\n**Logify** doesn't only [log errors](#throw-an-error) and [incoming requests](#log-incoming-requests), you can log pretty much anything you want to the console as well as in the logs files.\n```ts\nconst message = 'Hello World!'\nconst user = { name: 'John Doe', dob: new Date('1985-05-10') }\nconst error = new Error('A test error');\n\nlogify.logger.log(message);     // Log a string\nlogify.logger.log(user);        // Log an object\nlogify.logger.log(error);       // Log an error\n```\nThank you.\n___\n## License\nPlease read the license from [here](https://github.com/nasriyasoftware/Logify?tab=License-1-ov-file).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasriyasoftware%2Flogify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnasriyasoftware%2Flogify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasriyasoftware%2Flogify/lists"}