Skip to content

3axap4eHko/conode

Repository files navigation

CoNode

0-Deps, simple and fast context library for NodeJS

Build Status NPM version Downloads Coverage Status Maintainability Snyk

Table of Contents

Features

  • Provides useful wrappers of AsyncLocalStorage
  • Supports TypeScript typings
  • Supports CommonJS and ES Module systems

Installing

Using yarn:

yarn add conode

Using npm:

yarn add conode

Examples

Functional approach

import { createContext } from '../index';
const auth = createContext();

const action = () => {
  const jwt = auth.getContext();
  console.log(jwt);
};

auth.contextualize(jwt, action);

Class approach

import { contextualize, Context } from '../index';

const action = () => {
  const service = Service.getContext();
  console.log(service.getSomething());
};

class Service extends Context() {
  @contextualize
  async run() {
    await action();
  }
  getSomething() {
    return 'something';
  }
}

const service = new Service();

service.run();

License

License Apache-2.0 Copyright (c) 2022-present Ivan Zakharchanka

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published