Socket
Socket
Sign inDemoInstall

kyanite

Package Overview
Dependencies
0
Maintainers
1
Versions
55
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    kyanite

A small library of pure functional utilities to make life easier and data better


Version published
Maintainers
1
Created

Changelog

Source

v3.0.0

Breaking Changes

  • update now uses adjust under the hood which gives it all the same rules
    • Meaning it will also return the list back with an out of bounds index

New

  • Added some a new test to find to test Set Data types
  • Added new adjust function which applies a function to a supplied array data at a provided index
  • Added new keys function which takes the keys of a provided object and gives them back as an array

Improved

  • values now uses the built in keys function instead of Object.keys
  • draft now uses the built in keys function instead of Object.keys
  • Converted any, omit, omitBy, plan, sift, whole, and withDefaults to use keys instead of Object.keys
  • Greatly expanded the unit testing around values
  • Expanded the unit tests for groupBy
  • Expanded the unit tests for gt and gte
  • Expanded the unit tests for difference
  • Added an extra unit test for plan

Fixed

  • Documentation link in readme now goes to kyanites website instead of 404ing

Readme

Source

Kyanite Logo


A light weight functional JavaScript library that only depends on itself.

license:mit Netlify Status Npm Version Build Status codebeat badge


Standard JS

Why The Name Kyanite?

Because I think mineral names are cool

Contents

Philosophy

The goal for Kyanite is to be stripped down, light weight, and intuitive. The idea is to be performant and easy to use in a functional setting, making it simple to build reusable functions in your code base with powerful and organized algorithmic pipes. Ultimately, Kyanite’s continued growth and improvement will support the growth and improvement of the JavaScript community

Key Features

  • Purely Functional - This was a main focus for the project. I wanted it to be an easy to use, functional system while also being completely pure by making use of piping and transducers to boost performance.
  • Single type utility functions - Theoretically, all of the functionality is based around accepting a single data type, doing what it does, and giving you back a result, thus making it reliable, stable, and lightweight.
  • Everything is curried! Setup static in one spot and then pass the rest of the dynamic data in later.
  • Data last ideology

How To

Note: As of v2.0.0 the module should be imported as just K instead of kyanite The unminified version of the library is no longer available as of 2.0.0

With a CDN

<!-- It is recommended to replace the @latest with a strict version number for production -->
<script src="https://cdn.jsdelivr.net/npm/kyanite@latest/dist/kyanite.iife.min.js"></script>

<script>
  K.isEmpty({})
</script>

Or installing with npm i kyanite and then:

Standard module system

// This will use the module path in the package.json (src/index.js)
import * as K from 'kyanite'

Common JS

// For the prod minified version
const K = require('kyanite')

Testing

Kyanite follows the tap setup using the tape testing suite.

To run the tests:

  • git clone the repo
  • cd into the repo folder
  • Run npm i
  • Run npm t

Credit

A lot of the if not most of the inspiration for this library came from 2 libraries I follow closely, Primarily most of it stems from:

  • foreword by Abstract Tools which is a very nice and easy to use library developed by a close friend and mentor. This is where a lot of functionality ideas came from I can't recommend it enough.
  • Ramdajs by Ramda a beautiful and feature packed library where the original idea started

Keywords

FAQs

Last updated on 19 Mar 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