npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

bug-killer

v4.4.4

Published

Simple way to log messages in stdout or other stream.

Downloads

9,107

Readme

bug-killer

Support me on Patreon Buy me a book PayPal Travis Version Downloads

Simple way to log messages in stdout or other stream.

:cloud: Installation

$ npm i --save bug-killer

:clipboard: Example

// Dependencies
var Debug = require("bug-killer");

// Set log level
Debug.config.level = 4;

// Test defaults
Debug
  .log("A fancy error message", "error")
  .log("Info messages are useful", "info")
  .log("Hey, you've got a warning", "warn")
  ;

// Don't show date
Debug.config.date = false;
Debug.log("Display date is disabled.", "info");

// Custom type
Debug.config.myType = {
    color: [0, 255, 200]
  , text: "custom"
};

Debug.log("This is a custom message type", "myType");
Debug.log(new Error("Some error"));
Debug.log("Some interesting message");

// The built-in methods can be accessed like this, too:
Debug.error("This is an error.");
Debug.info("This is an info message.");
Debug.warn("This is a warning.");
Debug.log("This is a log message.");

// Logging objects works nicely too:
Debug.log({
    name: {
        name: "Johnny",
        last: "B"
    }
});

:question: Get Help

There are few ways to get help:

  1. Please post questions on Stack Overflow. You can open issues with questions, as long you add a link to your Stack Overflow question.
  2. For bug reports and feature requests, open issues. :bug:
  3. For direct and quick help from me, you can use Codementor. :rocket:

:memo: Documentation

log(message, type)

Displays debug messages by providing the type.

Usage:

BugKiller.log("Some info message");
BugKiller.log(new Error("Interesting error"));

The config object can be modified to make this module to act diferently. Defaults are shown:

BugKiller.config = {
    // The error type
    error: {
        color: [192, 57, 43]
      , text: "error"
      , level: 1
    }
    // The warning type
  , warn: {
        color: [241, 196, 15]
      , text: "warn "
      , level: 2
    }
    // The info type
  , info: {
        color: [52, 152, 219]
      , text: "info "
      , level: 3
    }
    // Display date
  , date: false
    // Log level
  , level: 4
    // Output stream
  , stream: process.stdout
    // The options passed to `util.inspect`
  , inspectOptions: { colors: true }
};

Params

  • Object message: The debug message that should be displayed. If message is an object, it will show the inspected object.
  • String type: The message type (e.g. "error", "info" etc). Default is computed ("error" if the message is an Error) or "info" if the provided type is invalid.

Return

  • Object The BugKiller instance.

getDate()

Returns the stringified date. This method can be overrided for a custom date format.

Return

  • String The date in HH:mm.ss - DD.MM.YYYY format.

error(message)

Displays debug messages by providing setting the type to "error".

Usage:

BugKiller.error("Some error message");

Params

  • Object message: The debug message that should be displayed. If message is an object, it will show the inspected object.

Return

  • Object The BugKiller instance.

warn(message)

Displays debug messages by providing setting the type to "warn".

Usage:

BugKiller.warn("Some warn message");

Params

  • Object message: The debug message that should be displayed. If message is an object, it will show the inspected object.

Return

  • Object The BugKiller instance.

info(message)

Displays debug messages by providing setting the type to "info".

Usage:

BugKiller.info("Some info message");

Params

  • Object message: The debug message that should be displayed. If message is an object, it will show the inspected object.

Return

  • Object The BugKiller instance.

:yum: How to contribute

Have an idea? Found a bug? See how to contribute.

:sparkling_heart: Support my projects

I open-source almost everything I can, and I try to reply everyone needing help using these projects. Obviously, this takes time. You can integrate and use these projects in your applications for free! You can even change the source code and redistribute (even resell it).

However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it:

  • Starring and sharing the projects you like :rocket:

  • PayPal—You can make one-time donations via PayPal. I'll probably buy a ~~coffee~~ tea. :tea:

  • Support me on Patreon—Set up a recurring monthly donation and you will get interesting news about what I'm doing (things that I don't share with everyone).

  • Bitcoin—You can send me bitcoins at this address (or scanning the code below): 1P9BRsmazNQcuyTxEqveUsnf5CERdq35V6

Thanks! :heart:

:dizzy: Where is this library used?

If you are using this library in one of your projects, add it in this list. :sparkles:

  • 3abn—A 3ABN radio client in the terminal.
  • a-csv (by jillix)—A lightweight CSV parser.
  • babel-it—Babelify your code before npm publish.
  • bible—Read the Holy Bible via the command line.
  • birthday—Know when a friend's birthday is coming.
  • blah—A command line tool to optimize the repetitive actions.
  • bloggify-cli—CLI for Bloggify.
  • bloggify-tools—Interactive command line tool to help you win at Bloggify.
  • cdnjs-importer—Easy way to import a library into CDNJS.
  • cli-gh-cal—GitHub like calendar graphs in command line.
  • diable—Daemonize the things out.
  • engine-tools (by jillix)—Engine Tools library and CLI app.
  • fwatcher—Watch files for changes.
  • ghcal—See the GitHub contributions calendar of a user in the command line.
  • gif-cli—Gif animations in your terminal!
  • git-issues (by Gabriel Petrovay)—Git issues extension to list issues of a Git project
  • git-stats—Local git statistics including GitHub-like contributions calendars.
  • git-stats-importer—Imports your commits from a repository into git-stats history.
  • git-unsaved—Scan your projects directory for dirty git repositories.
  • github-colors—GitHub colors and file extensions mapping
  • github-labeller—Automagically create issue labels in your GitHub projects.
  • github-stats—Visualize stats about GitHub users and projects in your terminal.
  • gpm—npm + git = gpm - Install NPM packages and dependencies from git repositories.
  • idea—A lightweight CLI tool and module for keeping ideas in a safe place quick and easy.
  • image-to-ascii-cli—View images in text format, in your terminal.
  • name-it—Generate project names from given keywords.
  • namy—Gets the name of the exported function.
  • npmreserve—Reserve package names on NPM.
  • regarde—A tiny tool and library to watch commands.
  • repo-downloader—Download all the repositories from BitBucket and GitHub, including your account, teams and where you created pull requests.
  • repository-downloader—Download all the repositories from BitBucket and GitHub, including your account, teams and where you created pull requests.
  • share-term—Share the terminal with your friends.
  • ship-release—Publish new versions on GitHub and npm with ease.
  • ssh-remote—Automagically switch on the SSH remote url in a Git repository.
  • statique—A Node.JS static server module with built-in cache options and route features.
  • tinyreq-cli—A cli tool for making http(s) requests. CLI for tinyreq.
  • tithe—Organize and track the tithe payments.
  • web-term—A full screen terminal in your browser.
  • wrabbit (by jillix)—Wrap scripts by providing the wrapping function.
  • xhr-form-submitter-test—Test application for XHR form submitter JavaScript library

:scroll: License

MIT © Ionică Bizău