mammothphp/woollym

v0.1-alpha2 2024-01-28 15:18 UTC

This package is auto-updated.

Last update: 2024-04-24 18:36:47 UTC


README

WoollyM logo

Documentation: WoollyM.dev
Main Author: Julien Boudry
License: BSD-3 - Please say hello if you like or use this code!
Donation: ₿ bc1q3jllk3qd9fjvvuqy07tawkv7t6h7qjf55fc2gh or Github Sponsor Page
You can also offer me a bottle of yellow wine from JURA

Warning

This project is currently at an experimental stage. Production use is not recommended. APIs and functionalities are subject to change at any time without notice. Documentation is still deficient. Help and feedback are most welcome.

Tip

The Official Documentation contains a complete presentation of the project, its features and the full API reference.

WoollyM favicon WoollyM.dev WoollyM favicon

WoollyM is a PHP library for data analysis. It can be used to represent tabular data from various sources (CSV, database, JSON, Excel...). The unified API can then be used easily to browse, analyze, modify, and export data in a variety of formats, we try to provide a very playful, modern, expressive, and user-friendly interface. This API is also modular and extensible, so you can easily add your own calculation and exploration methods.

Performances are optimized to be as light as possible on RAM during operations (input, output, read, write, stats, copy, clone), this is done using - internally - complex iterators and optimization preferring RAM over speed (even if we try to be fast also). The storage engine uses a modular storage system, if the default PhpArray driver uses RAM, the use of a database driver (such as the PDO driver) theoretically allows you to work on extremely large datasets. Using appropriate drivers, you can also write - for example - directly to the database (add, update) using the Woolly API.

Note

Woolly was a fork from archon/dataframe project which was very useful and inspiring during development. Today, the internal engine has been almost completely rewritten and the public APIs are radically different and incompatible. A few traces of code and ideas remain, they have been placed by their original author under the BSD-3 license.