Socket
Socket
Sign inDemoInstall

@rushstack/node-core-library

Package Overview
Dependencies
26
Maintainers
3
Versions
121
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @rushstack/node-core-library

Core libraries that every NodeJS toolchain project should use


Version published
Weekly downloads
1.4M
decreased by-24.48%
Maintainers
3
Install size
4.30 MB
Created
Weekly downloads
 

Package description

What is @rushstack/node-core-library?

The @rushstack/node-core-library provides a collection of essential utilities and lightweight polyfills designed for use in Node.js applications. It aims to offer a standardized set of tools for common operations such as file system manipulation, URL and path handling, and advanced logging capabilities, among others. This library is part of the Rush Stack family of projects, which are focused on providing scalable and reliable engineering tools.

What are @rushstack/node-core-library's main functionalities?

FileSystem operations

Provides a set of utilities for performing file system operations, such as reading, writing, and deleting files, with improved error messages and handling over the native Node.js fs module.

const { FileSystem } = require('@rushstack/node-core-library');

FileSystem.writeFile({
  filePath: './example.txt',
  contents: 'Hello, world!'
});

Advanced logging

Enables advanced logging capabilities, including support for verbose and error messages, and the ability to customize the output through terminal providers.

const { Terminal, ConsoleTerminalProvider } = require('@rushstack/node-core-library');

const terminalProvider = new ConsoleTerminalProvider();
const terminal = new Terminal(terminalProvider);

terminal.writeLine('Hello, world!');

JSON file handling

Simplifies reading from and writing to JSON files, including support for JSON schema validation and pretty-printing.

const { JsonFile } = require('@rushstack/node-core-library');

const jsonObject = { key: 'value' };
JsonFile.save(jsonObject, './example.json');

Other packages similar to @rushstack/node-core-library

Readme

Source

@rushstack/node-core-library

This library provides a conservative set of "core" NodeJS utilities whose purpose is to standardize how we solve common problems across our tooling projects. In order to be considered "core", the class must meet ALL of these criteria:

  • small and self-contained (i.e. quick to install)

  • solves a ubiquitous problem (i.e. having one standardized approach is better than allowing each developer to use their favorite library)

  • broad enough applicability to justify imposing it as a dependency for nearly every NodeJS project

  • code is design reviewed, API approved, and documented

Examples of "core" functionality that meets this criteria:

  • basic file/folder manipulation
  • JSON file loader/saver/validator
  • package.json parser
  • build performance timers
  • executing shell commands

This package is NOT intended to be a dumping ground for arbitrary utilities that seem like they might be useful. Code should start somewhere else, and then graduate to node-core-library after its value has already been demonstrated. If in doubt, create your own NPM package.

  • CHANGELOG.md - Find out what's new in the latest version
  • API Reference

@rushstack/node-core-library is part of the Rush Stack family of projects.

FAQs

Last updated on 10 Apr 2024

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