Socket
Socket
Sign inDemoInstall

lazer-js

Package Overview
Dependencies
0
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    lazer-js

A console printer with a fluent API


Version published
Maintainers
1
Install size
8.44 kB
Created

Readme

Source

lazer

Lazer is a utility for printing to the console using a fluent API. Written in TypeScript and compatible with Deno and Node.js runtimes.

Description

Lazer helps you build, format and print complex messages to the console using an expressive fluent API.

Usage

Simple Example

example.ts
import { lazer } from "https://deno.land/x/lazer/mod.ts"

lazer()
    .print("Hello,")
    .print_space()
    .print_green("Green World")
    .print_ln("!")
$ deno run example.ts
Hello, Green World!

Complex Example

example.ts
import { lazer } from "https://deno.land/x/lazer/mod.ts"

const remoteAddr = "127.0.0.1";
const method = "GET";
const path = "/a/really/really/really/long/path/here";
const status = 200;
const time_ms = 20;
const size_bytes_string = "1.10kB";

lazer()
    .print('[').print_utc_time().print(']')
    .print_space().print("-").print_space()
    .print_pad_right(remoteAddr, 15, '_')
    .print_space(2)
    .print_pad_right(method, 4, '_')
    .print_space(2)
    .print_pad_right(path, 20, "_")
    .print_space(2)
    .if(status >= 200 && status < 300)
        .print_green(status)
    .elseif(status >= 300 && status < 400)
        .print_yellow(status)
    .elseif(status >= 400)
        .print_red(status)
    .end()
    .print_space(2)
    .print_pad_right(`${time_ms}ms`, 6, "_")
    .print_space(2)
    .print_ln(size_bytes_string);
$ deno run example.ts
[Fri, 01 Jan 2021 00:00:00 GMT] - 127.0.0.1______  GET_  /a/really/really/+42  200  20ms__  1.10kB 

Buffering Example

example.ts
import { lazer } from "https://deno.land/x/lazer/mod.ts"

const getLinePrefix = () => 
{
    return lazer().buffer()
        .print_yellow('[').print_yellow("Line Prefix").print_yellow(']')
        .print_space().print("-").print_space()
        .print_yellow('[').set_color_yellow().print_utc_time().print_yellow(']')
        .print_space().print("-").print_space()
        .return();
}

lazer()
    .print(getLinePrefix())
    .print_yellow_ln("This is a prefixed line of text output");

lazer()
    .print(getLinePrefix())
    .print_yellow_ln("This is another prefixed line of text output");
$ deno run example.ts
[Line Prefix] - [Mon, 10 May 2021 16:31:29 GMT] - This is a prefixed line of text output
[Line Prefix] - [Mon, 10 May 2021 16:31:29 GMT] - This is another prefixed line of text output

Buffer Aliasing Example

example.ts
import { lazer } from "https://deno.land/x/lazer/mod.ts"

lazer().buffer()
    .set_color_red().print_ln("Some red output to buffer")
    .store('i am an alias');

lazer().buffer()
    .load('i am an alias')
    .print_b();
$ deno run example.ts
Some red output to buffer

Toggling Color Mode Example

example.ts
import { lazer } from "https://deno.land/x/lazer/mod.ts"

lazer()
    .color_off()
    .print_yellow_ln("I am not yellow")
    .color_on()
    .print_yellow_ln("I am yellow");
$ deno run example.ts
I am not yellow
I am yellow

Supported Platforms

Deno

import { lazer } from "https://deno.land/x/lazer/mod.ts"

Node.js

npm i --save lazer-js
const { lazer } = require('lazer-js');

Keywords

FAQs

Last updated on 18 Jun 2021

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc