Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

simple-console

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

simple-console

A small, cross-browser-friendly console wrapper.

  • 0.1.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
11
Maintainers
1
Weekly downloads
 
Created
Source

Simple Console

Provides a simple, but useful cross-browser-compatible console logger.

Build Status Coverage Status

Sauce Test Status

Features

  • Proxies to native functionality wherever possible.
  • Enables .apply and .bind usage with console.OPERATION.
  • Buildable from straight CommonJS source.
  • Available as minified distributions as well.

Installation

Install via npm:

$ npm install simple-console

or bower:

$ bower install simple-console

Usage

Import the SimpleConsole class into your code (via AMD, CommonJS, etc) and use as a drop-in replacement for console.OPERATION. Creating a new object does not effect the existing window.console object.

AMD
define(["simple-console"], function (SimpleConsole) {
  var con = new SimpleConsole();
  con.log("Hello world!");
});
CommonJS
var SimpleConsole = require("simple-console");
var con = new SimpleConsole();
con.log("Hello world!");
VanillaJS

In your HTML:

<!-- Option One: Minified -->
<script src="PATH/TO/simple-console/dist/simple-console.min.js"></script>

<!-- Option Two: Raw source -->
<script src="PATH/TO/simple-console/simple-console.js"></script>

In your JS:

var con = new window.SimpleConsole();
con.log("Hello world!");

Noop Logger

There are some cases where you will want to conditionally silence the logger. You can do this by passing setting the noop option:

var con = new SimpleConsole({ noop: true });
con.log("Hello world!"); // => Should _not_ output anything.

This is usually useful in a case where you build different capabilities based on some external information, for example, React-style, this could be something like:

var con = new SimpleConsole({
  noop: process.env.NODE_ENV === "production"
});

con.log("Hello world!"); // => Should _not_ output anything in `production`.

Polyfill

If you are looking to polyfill console, then you can:

new SimpleConsole({ patch: true });

This will mutate the window.console object in ways that are not easily undone, so consider this a "one way" patch. Moreover, if window.console does not exist, it will create the object.

You can even go further and patch and noop the logger with:

new SimpleConsole({ patch: true, noop: true });

which ensures that nothing logs anything.

Note: In addition to filling/patching missing behavior, the polyfill will replace behavior that already exists and works. This is presently due to complexities likely normalizing and ensuring things like .bind, .apply and .call work on all log methods.

Development

Run checks, then development server:

$ gulp

Separated:

$ gulp check
$ gulp dev

Node demo:

$ node examples/demo.js

Navigations:

Release process:

  • Bump versions in package.json, bower.json
  • Run npm run-script everything
  • Edit HISTORY.md
  • Run gulp check:all

Also See

Similar projects that can help with console:

License

Copyright 2015 Formidable Labs, Inc. Released under the MIT License,

Keywords

FAQs

Package last updated on 03 Apr 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc