Metadata-Version: 2.3
Name: streamsight
Version: 2.0.7
Summary: A toolkit for offline evaluation of Recommender Systems.
Keywords: recsys,recommendation,practical evaluation,global timeline,reccomender systems,data leakage
Author: Ng Tze Kean
Author-email: Ng Tze Kean <ngtzekean@gmail.com>
Requires-Dist: colorama>=0.4.6
Requires-Dist: colorlog>=6.10.1
Requires-Dist: deprecation>=2.1.0
Requires-Dist: httpx>=0.28.1
Requires-Dist: numpy==2.2.6
Requires-Dist: pandas>=2.3.3
Requires-Dist: progressbar>=2.5
Requires-Dist: pyarrow>=22.0.0
Requires-Dist: pyfiglet>=1.0.4
Requires-Dist: scikit-learn>=1.7.2
Requires-Dist: scipy>=1.16.3
Requires-Dist: simplejson>=3.20.2
Requires-Dist: tqdm>=4.67.1
Requires-Dist: typing-extensions>=4.15.0
Requires-Dist: urllib3>=2.5.0
Maintainer: Ng Tze Kean
Maintainer-email: Ng Tze Kean <ngtzekean@gmail.com>
Requires-Python: >=3.13
Project-URL: Homepage, https://hiiamtzekean.github.io/streamsight/
Project-URL: Repository, https://github.com/ngtzekean/streamsight
Description-Content-Type: text/markdown

# Streamsight

![streamsight-logo](https://github.com/HiIAmTzeKean/streamsight/raw/master/docs/assets/_static/logo_removebg.png)

[![PyPI Latest Release](https://img.shields.io/pypi/v/streamsight.svg)](https://pypi.org/project/streamsight/)&nbsp;&nbsp;
[![Docs](https://github.com/hiiamtzekean/streamsight/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/hiiamtzekean/streamsight/)&nbsp;&nbsp;
[![Python version](https://img.shields.io/badge/python-3.12.5-blue)](https://www.python.org/downloads/)

Streamsight is an offline Reccomender Systems (RecSys) evaluation toolkit that respects a global timeline.
The aim is to partition the data into different windows where data is incrementally released for the programmer
to fit, train and submit predictions. This aims to provide a close simulation of an online setting when evaluating
RecSys algorithms.

## Getting Started

Clone the repository

```bash
git clone https://github.com/hiiamtzekean/streamsight
cd streamsight
```

Dependencies can be installed with `uv` for ease of management.

```bash
uv sync
```

Alternatively, you may install dependencies locally with pip and venv

```bash
python3 -m venv venv
source venv/bin/activate
pip install -e .
```

The dependencies are listed in `pyproject.toml`.

## Contributing

- We welcome all contributors, be it reporting an [issue](https://github.com/hiiamtzekean/streamsight/issues),
or raising a [pull request](https://github.com/hiiamtzekean/streamsight/pulls) to fix an issue.
- When you make changes, rerun `pip install .` to test your changes.

## Documentation

The documentation can be found [here](https://hiiamtzekean.github.io/streamsight/)
and [repository](https://github.com/hiiamtzekean/streamsight) on Github.

## Citation

If you use this library in any part of your work, please cite the following papers:

```text
Ng, T. K. (2024). Streamsight: a toolkit for offline evaluation of recommender systems. Final Year Project (FYP), Nanyang Technological University, Singapore. https://hdl.handle.net/10356/181114
```
