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

envsafe

Package Overview
Dependencies
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

envsafe

Mostly based on the great project [envalid](https://github.com/af/envalid), but with some minor differences

  • 0.2.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
10K
increased by9.74%
Maintainers
1
Weekly downloads
 
Created
Source

Maintainability Test Coverage

envsafe 🔒

Mostly based on the great project envalid, but with some minor differences

  • Rewritten in 100% TypeScript
  • Always strict - only get the props you have defined
  • No dependencies - smaller bundle for browser/isomorphic apps

How to use

Works the same in the browser and in node.

import { str, cleanEnv, url } from 'envsafe';

export const env = cleanEnv(process.env, {
  NODE_ENV: str({
    devDefault: 'development',
  }),
  REACT_API_URL: url({
    devDefault: 'https://example.com/graphql',
  }),
  REACT_APP_AUTH0_CLIENT_ID: str({
    devDefault: 'xxxxx',
  }),
  REACT_APP_AUTH0_DOMAIN: str({
    devDefault: 'xxxxx.auth0.com',
  }),
  REACT_APP_SEGMENT_ID: str({
    devDefault: 'xxxxx',
  }),
  REACT_APP_BUGSNAG_API_KEY: str({
    default: 'xxxxx',
  }),
});

Running the project locally

To run TSDX, use:

npm start # or yarn start

This builds to /dist and runs the project in watch mode so any edits you save inside src causes a rebuild to /dist.

To do a one-off build, use npm run build or yarn build.

To run tests, use npm test or yarn test.

Configuration

Code quality is set up for you with prettier, husky, and lint-staged.

Jest

Jest tests are set up to run with npm test or yarn test.

Rollup

TSDX uses Rollup as a bundler and generates multiple rollup configs for various module formats and build settings. See Optimizations for details.

TypeScript

tsconfig.json is set up to interpret dom and esnext types.

Continuous Integration

GitHub Actions

A simple action is included that runs these steps on all pushes:

  • Installs deps w/ cache
  • Lints, tests, and builds

Optimizations

Please see the main tsdx optimizations docs. In particular, know that you can take advantage of development-only optimizations:

// ./types/index.d.ts
declare var __DEV__: boolean;

// inside your code...
if (__DEV__) {
  console.log('foo');
}

You can also choose to install and use invariant and warning functions.

Module Formats

CJS, ESModules, and UMD module formats are supported.

The appropriate paths are configured in package.json and dist/index.js accordingly. Please report if any issues are found.

Named Exports

Per Palmer Group guidelines, always use named exports. Code split inside your React app instead of your React library.

FAQs

Package last updated on 16 Sep 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

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