Skip to content

Latest commit

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

js-dlogger (logger for js frameworks)

📌 Description

js-dlogger is a lightweight, configurable logger for JavaScript, React.js, and React Native applications. It provides structured logging with different levels (info, debug, dLog, Warn, Error) and supports environment-based logging.


npm versionGitHub issuesGitHub starsLicensenpm downloads

Installation

Install the package via npm:

npm install js-dlogger

or

yarn add js-dlogger

Usage :

✅ Basic Usage

Here’s an example to get you started:

importLoggerfrom"js-dlogger";Logger.info("App","INIT","Application started");Logger.debug("App","DEBUG","This is a debug message");Logger.dLog("App","DATA",{key: "value"});Logger.warn("App","WARNING","This is a warning message");Logger.error("App","ERROR","An error occurred");

📌 Logger with File Context

Here’s an example to get you started:

import{LoggerWithFile}from'js-dlogger/loggerWrapper';constLogger=LoggerWithFile("Login.jsx");Logger.info("INIT","Application started");Logger.debug("DEBUG","This is a debug message");Logger.dLog("DATA",{key: "value"});Logger.warn("WARNING","This is a warning message");Logger.error("ERROR","An error occurred");

🌎 Environment-Based Logging

The logger dynamically determines the environment:

  • React: If globalThis.APP_ENV is set, it will be used.
  • React Native: If logger.config.js is available, it loads the environment from there.
  • Any js-framework : Otherwise, it defaults to development.

Example logger.config.js:

/** * Config file for {logger} * @return Object : ENV value * @alias : development | production * @development ~ for development environment * @production ~ release & disable debug logs * @author structlooper * */exportdefault{ENV: 'production',};

🛠 Best Practices

1️⃣ Ensure the Config File Exists (If Required)

If your project needs logger.config.js, make sure to create it:

exportdefault{ENV: 'production',};

2️⃣ Use File-Based Logging for Easier Debugging

Instead of passing taq manually, use LoggerWithFile for consistency.

constLogger=LoggerWithFile("Login.jsx")

⚡️ Troubleshooting

IssueSolution
Metro bundler errorEnsure logger.config.js exists or use the try-catch approach.
Environment is always developmentCheck if globalThis.__APP_ENV__ or logger.config.js is correctly set.

📜 License

This project is licensed under the MIT License. See the LICENSE file for details.


Contributing

Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.


📧 Contact

For support, feedback, or contributions, reach out via GitHub: structlooper.

About

js-dlogger is a lightweight, configurable logger for JavaScript, React.js, and React Native applications. It provides structured logging with different levels (info, debug, dLog, Warn, Error) and supports environment-based logging.

Topics

Resources

Stars

11 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages