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

@meersagor/js-composable

v0.0.1

Published

JS-Composable is a lightweight utility library designed to provide practical helper methods that simplify real-world use cases.

Downloads

69

Readme

js-composable

JS-Composable is a lightweight utility library designed to provide practical helper methods that simplify real-world use cases. Tailored for Node.js projects, it includes a versatile set of functions to streamline repetitive tasks and support common development needs.

Key Features

  • Utility-Focused: A collection of helper methods built to tackle everyday coding challenges.
  • Modular and Flexible: Use only what you need without bloating your project.
  • Node.js Ready: Compatible with any Node.js environment, enhancing productivity and efficiency in server-side applications.
  • Real-World Applications: Inspired by actual project needs, providing practical solutions for real scenarios.

With JS-Composable, your Node.js projects get a boost in maintainability and clarity, allowing you to focus on core functionality while the library handles common yet essential utility tasks.

Installation

To install the package, run the following command:

npm i @meersagor/js-composable

Usage

To use the package, import the required methods:

import {generateFormData, logGenerateFormData} from '@meersagor/js-composable';

Example 1: Simple Object

import {generateFormData} from '@meersagor/js-composable';
const obj = {
    name: 'Meer Sagor',
    age: 24,
    skills: ['javaScript', 'typeScript', 'vuejs', 'nuxtjs', 'reactjs', 'nextjs']
};
const result = generateFormData({objectData: obj});
//  If  you  want  to  log  the  generated  FormData,  use  the  logGenerateFormData  method
logGenerateFormData(result);

Example 2: Object with File and Custom File Key

Here is an example of how to use the package with an object that includes a file and a custom file key:

import {logGenerateFormData} from '@meersagor/js-composable';
const obj2 = {
    name: 'Meer Sagor',
    age: 24,
    skills: ['javaScript', 'typeScript', 'vuejs', 'nuxtjs', 'reactjs', 'nextjs'],
    file: new File(["content"], "filename.txt") //  Example  file  object
};
const result = generateFormData({objectData: obj2, fileKey: 'attachment'});
//  Log  the  generated  FormData
logGenerateFormData(result);

A TypeScript utility for dynamically adding, updating, and ensuring the loading of custom fonts in a web application. This utility helps you define font-face rules for custom fonts, allowing you to update their sources and ensure the fonts are fully loaded in the browser.

Example: To use this loadCustomFontFace utility

import {loadCustomFontFace} from '@meersagor/js-composable';

await loadCustomFontFace({
    fontFamily: 'CustomFont',
    srcUrl: 'https://example.com/fonts/CustomFont.woff',
    fontStyle: 'normal',
    fontWeight: '400',
    format: 'woff2',
    fontDisplay: 'swap',
});
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <style>
        .custom-font{
            font-family: 'CustomFont',sans-serif;
        }
    </style>
</head>
<body>
    <h1 class="custom-font">Hello world</h1>
</body>
</html>

Example: To use this generateImageUrlToBase64 utility

To use the generateImageUrlToBase64 function, pass it an object containing the url of the image to convert and an optional parseType to specify the desired output format.

import {generateImageUrlToBase64} from '@meersagor/js-composable';

generateImageUrlToBase64({url: 'https://example.com/image.png'})
    .then((base64) => console.log('Base64:', base64))
    .catch((error) => console.error('Error:', error));

Methods

generateFormData This method generates FormData from the provided object.

| Parameters | Type | Description | Default | |------------|---------------------|---------------------------------------------------------------------------------------|---------| | objectData | object | The object to be converted into FormData | — | | fileKey | string (optional) | The key to use for the file if the object contains a file and want to set custom key. | — |

Returns

  • FormData: The generated FormData object.
  • logGenerateFormData This method logs the generated FormData to the console.

loadCustomFontFace

| Parameters | Type | Description | Default | |-------------|--------|-------------------------------------------------------|------------| | fontFamily | string | The name of the font family. | — | | srcUrl | string | The URL of the font file. | — | | format | string | The format of the font (e.g., 'woff', 'woff2'). | 'woff' | | fontWeight | string | The weight of the font (e.g., 'normal', 'bold'). | 'normal' | | fontStyle | string | The style of the font (e.g., 'normal', 'italic'). | 'normal' | | fontDisplay | string | Defines how a font face is displayed. | 'swap' |

generateImageUrlToBase64

| Parameters | Type | Description | Default | |------------|--------|-----------------------------------|------------| | url | string | The URL of the image to convert. | — | | parseType | string | Output format: 'base64' or 'svg'. | 'base64' |

License

This package is open-source and available under the MIT License.

Contributing

Contributions are welcome! Please feel free to submit a pull request.

Issues

If you encounter any issues, please create a new issue.