Socket
Book a DemoInstallSign in
Socket

@buttercup/app-env

Package Overview
Dependencies
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@buttercup/app-env

Buttercup application environment configuration manager

latest
Source
npmnpm
Version
0.5.0
Version published
Weekly downloads
12
20%
Maintainers
2
Weekly downloads
 
Created
Source

App Env

Buttercup application environment configuration manager

Build Status

About

Buttercup is a cross-platform password manager, and in being so requires vastly different configurations for each platform it runs on. Take for instance Buttercup for Desktop and the browser extension - one is Node (native) and the other is web-based. This project provides a method to set environment-specific tools and methods (for crypto, for instance). It also provides some presets for native and web.

React Native

There is no preset configuration in this library for React Native (Buttercup for Mobile), as this environment is extremely complex and highly-reliant on React-Native internals.

Usage

Step 1: Install @buttercup/app-env as a dependency:

npm install @buttercup/app-env --save

Step 2: Load a preset environment:

// For node:
require("@buttercup/app-env/native");
// For web:
import "@buttercup/app-env/web";

Or execute a custom environment configuration (see later section).

Step 3: Load Buttercup and other dependencies

Buttercup should always be loaded after the app-env:

const { ArchiveManager } = require("buttercup");

// ...

Custom environment configuration

You can easily specify your own configuration by specifying methods for each required property, for example:

const { getSharedAppEnv } = require("@buttercup/app-env");

function decryptText(/* ... */) {
    /* ... */
}

function encryptText(/* ... */) {
    /* ... */
}

getSharedAppEnv().setProperties({
    "crypto/v1/decryptText": decryptText,
    "crypto/v1/encryptText": encryptText
});

The following properties should be specified:

PropertyDescription
compression/v1/compressTextMethod for compressing text -> text.
compression/v1/decompressTextMethod for decompressing text -> text.
crypto/v1/decryptTextDecryption method for decrypting text.
crypto/v1/encryptTextEncryption method for encrypting text.
crypto/v1/setDerivationRoundsSet the number of derivation rounds to use for key derivation.

Keywords

buttercup

FAQs

Package last updated on 17 Feb 2020

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