npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ts-cornucopia

v3.1.2

Published

A package to organize small pieces of code easy to use in many projects.

Downloads

12

Readme

TS Cornucopia

Description

The objective of this package is to aggregate small pieces of code that are easily needed in many projects of different scopes.

The idea came after tinkering for some years with different approaches to sharing codes between my own projects, resulting in different headaches. So why not simply bundle those inside an NPM package? And why not just leave it open source in case this can help someone else? So, here we are...

Table of Contents

Installation

npm install ts-cornucopia

Usage

To simplify this section, each separate function will have its own documentation file (linked on the name), and here I only list them all with a brief explanation:

File

  • executeOnFiles: This function is used to iterate inside a directory (recursivity as an option) and then execute a function with the path of each file found inside.

  • executeOnFolders: This function is used to iterate inside a directory (recursivity as an option) and then execute a function with the path of each folder found, including the root folder of the execution.

  • proccessTemplate: This function reads a file, replaces all iterations of named placeholders with values passed.

Number

  • numberFormat: This function converts a number into a string and adds a separator every three integer digits.

  • randomRange: This function returns a random integer between two values.

Scripts

  • indexer: This function will generate a index file that imports and exports all other files of the same folder.

String

  • cammelToSpace: This function detects cammelcase and adds a space behind every word, it also adds uppercase to the first letter of the first word.

  • firstToUppercase: This function returns the given string with the changed first letter to be uppercase.

Tests

To guarantee conformity after bundling the test script runs only with the bundled codes. Which means you have to build before running it:

npm run build

npm run test

Roadmap

  • 4.0.0:
    • Merge of executeOnFolders and executeOnFiles into a single function since there is too much overlap between the two and a few extra options could be added to make the final function have returns on par with both situations.
    • Creation of executeOnFilesSync and conversion of executeOnFiles into an async function so the final function is more similar to "fs"'s patterns.