Skip to content

Social Card of this repo

Introduction

A powerful, fully-typed collections library for TypeScript, combining Laravel's collection elegance with advanced data processing capabilities. Features a fluent API, lazy evaluation, statistical analysis, machine learning operations, and comprehensive data manipulation tools—all with zero dependencies.

Features

  • Lightweight & Dependency-free
  • Type safe
  • Laravel-inspired APIs

Core Operations (Laravel Collection API)

Advanced Array & Object Operations

Advanced Transformations

Statistical Operations

Time Series Analysis

Machine Learning Operations

Async & Performance Optimization

Data Validation & Quality

Text Processing

Serialization & Export

Streaming & I/O

Advanced Mathematical Operations

Special Data Types Support

Versioning & History

Development Tools

Utility Features

Available Methods

Please note, all of these methods may be chained to fluently manipulate the underlying data:

API MethodsAPI MethodsAPI Methods
aggregateallas
assertValidavgbatch
benchmarkcachecartesianProduct
castchunkcollapse
combineconfigurecontains
containsAllcontainsOneItemconvolve
correlatecountcountBy
crossJoincursordateTime
debugdddescribe
detectAnomaliesdifferentiatediffAssoc
diffKeysdiffUsingdoesntContain
dumpduplicateseach
eachSpreadentropyeveryAsync
explainexceptfft
filterfilterAsyncfirst
firstOrFailfirstWhereflatten
flatMapflipforPage
forecastforgetfromStream
fuzzyMatchgeoDistanceget
groupBygroupByMultiplehas
havingimputeimplode
indexinstrumentintegrate
intersectisEmptyisNotEmpty
joinkmeanskeyBy
keysknnkurtosis
lastlazyleftJoin
linearRegressionlowermacro
makemapmapAsync
mapIntomapOptionmapSpread
mapToDictionarymapToGroupsmapUntil
mapWithKeysmaxmedian
memoizemergemergeRecursive
metricsminmode
moneymovingAveragenaiveBayes
ngramsnthnormalize
omitonlyoptimize
outlierspadpaginate
parallelpartitionpercentile
pickpipepivot
pivotTablepoppower
prefetchprependproduct
profilepullpush
putqueryrandom
reducereduceAsyncreject
removeOutliersreplacereplaceRecursive
reversesanitizescan
searchseasonalitysentiment
shiftshuffleskip
skipUntilskipWhileslice
slugsolesomeAsync
sortsortBysortByDesc
sortDescsortKeyssortKeysDesc
splicesplitstandardDeviation
streamsumsymmetricDiff
taptaketakeUntil
takeWhiletimeSeriestimes
toArraytoCSVtoElastic
toGraphQLtoJSONtoMap
toPandastoSettoSQL
toXMLtransformtrend
unionunlessunlessEmpty
unlessNotEmptyunfoldunwrap
uppervalidatevalidateSync
valuesvariancewhen
whenEmptywhenNotEmptywhere
whereBetweenwhereInwhereInstanceOf
whereLikewhereNotBetweenwhereNotIn
whereNotNullwhereNullwhereRegex
wordFrequencywrapzscore

Changelog

Please see our releases page for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Stargazers

Stargazers

Community

For help, discussion about best practices, or any other conversation that would benefit from being searchable:

Discussions on GitHub

For casual chit-chat with others using this package:

Join the Stacks Discord Server

Credits

Thanks to...

License

The MIT License (MIT). Please see LICENSE for more information.

Made with 💙

Released under the MIT License.