Metadata-Version: 2.3
Name: arcverse
Version: 0.0.1a0
Summary: arcverse is a library for creating synthesizing arc-agi like datasets with knobs to control different degrees of freedom.
License: MIT
Author: Abhay Kashyap
Requires-Python: >=3.10.1,<=3.13.1
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: click (>=8.1.8,<9.0.0)
Requires-Dist: numpy (>=2.2.3,<3.0.0)
Requires-Dist: pillow (>=11.1.0,<12.0.0)
Project-URL: Changelog, https://github.com/hayabhay/arcverse/releases
Project-URL: Documentation, https://hayabhay.github.io/arcverse
Project-URL: Homepage, https://hayabhay.github.io/arcverse
Project-URL: Repository, https://github.com/hayabhay/arcverse
Description-Content-Type: text/markdown

# Arcverse

---

For now, install from source:

```bash
git clone
cd arcverse
pip install -e .
```

Then, open a notebook and run:

```python
from arcverse import ArcWorld
from arcverse.utils import render

world = ArcWorld(max_rows=10, max_cols=10)
```

This will create a world that is initialized with a set of random transforms.

```python
print(world.transforms)
```

Then you can draw samples from this world as a bunch of starting grids and their corresponding transformed grids.

```python
for sample in world.sample(5):
    display(render(sample[0]))
    display(render(sample[1]))
    print("---")
```

For now, a static arc-like puzzle is created and can be accessed via:

```python
world.get_puzzle()
```

Since object shapes are random, there is a good chance all five train examples might not converge to an obvious solution but this will be refined over time.

Example
![Screenshot from 2025-02-17 00-32-13](https://github.com/user-attachments/assets/53fdaa92-8cbc-466e-b139-2053ac106b7c)

