semvec/pypi-packages huggingface dataset:
plottwist-py 1.0.1
plottwist makes plots reproducible from their PDFs.
License: MIT
Requires Python: >=3.7

![plottwist](doc/plottwist.png)

## plottwist

`plottwist` makes plots reproducible from their PDFs.

Perhaps you, like me, find yourself digitizing plots to get the data back from papers. That doesn't feel right, as most plots are digital nowadays anyway.

_What if we just embed the plot data directly into itself?_

`plottwist` transparently saves you Matplotlib actions and then encodes their data and parameters into a fancy link on the plot itself.

### Installation

```python
pip install plottwist-py
```

### Twisting
```python
import matplotlib.pyplot as plt
import numpy as np
import plottwist

x = np.linspace(0, 1)

pt = plottwist.PlotTwist(plt.gca())
pt.plot(x, x**2, label='squared')
pt.scatter(x, x**3, label='cubed', s=10, marker='x')
pt.axvline(0.5, color="orange", linestyle='dashed')
pt.axhline(0.1, color="black", linestyle='dotted')
pt.legend(frameon=False)
pt.add_author("Ivan Markin")
pt.add_reference("https://doi.org/10.1103/6mtx-nftm")
pt.hide_at_the_origin()
plt.savefig("examples/plot.pdf", bbox_inches='tight')
```

### Untwisting

Find the link hidden at the origin of the axes in the plot PDF, right-click, copy the URL, save it to a file, and reproduce the plot using `plottwist`:

```python
import matplotlib.pyplot as plt
import plottwist

pt = plottwist.PlotTwist(plt.gca())
with open("examples/plot.plottwist") as f:
    url = f.read()
pt.reproduce(url)
plt.show()
print(pt.data["metadata"])
```

You can try that yourself with the example file `examples/plot.pdf`.

### Soundtrack

> I keep trying to make something  
> Create something true  
> But I can't replicate you, huh  
> No, I can't replicate you  
> No, I can't replicate you, huh  


_Róisín Murphy - Can’t Replicate_
pranjit-transformer 0.1.0
CPU-First Premium Transformer Library for low-resource devices
License: MIT
Requires Python: >=3.8
Keywords: transformer, deep-learning, nlp, pytorch, cpu-optimized, low-resource, ai, machine-learning

# 🚀 Pranjit Transformer

[![PyPI version](https://badge.fury.io/py/pranjit-transformer.svg)](https://badge.fury.io/py/pranjit-transformer)
[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

A **CPU-first**, lightweight transformer library optimized for training and inference on low-resource devices. Built with PyTorch, featuring modern architecture components like RoPE embeddings, RMS normalization, and gated feed-forward networks.

## ✨ Features

- 🖥️ **CPU-Optimized**: Designed for efficient training on standard hardware
- 🔧 **User-Controlled**: Full control over model configuration and hyperparameters
- 🧩 **Hybrid Tokenizer**: Word-level and character-level tokenization support
- ⚡ **Modern Architecture**: RoPE embeddings, RMS normalization, gated FFN
- 📦 **Clean API**: Simple and intuitive interface for quick experimentation
- 💾 **Model I/O**: Easy save/load functionality for checkpoints

## 📦 Installation
kaleidoswap 0.4.0
Python SDK for the Kaleidoswap protocol - trade RGB assets on Lightning Network
License: MIT
Requires Python: >=3.8
Keywords: bitcoin, lightning, rgb, swap, trading, kaleidoswap

# Kaleidoswap Python SDK

Python bindings for the Kaleidoswap SDK - trade RGB assets on Bitcoin Lightning Network.

## Installation

```bash
pip install kaleidoswap
```

## Quick Start

```python
from kaleidoswap import KaleidoClient, KaleidoConfig
import json

# Create a client
config = KaleidoConfig(
    base_url="https://api.regtest.kaleidoswap.com",
    node_url=None,  # Optional RGB node URL
    timeout=30.0,
    max_retries=3,
    cache_ttl=60,
)
client = KaleidoClient(config)

# List available assets
assets_json = client.list_assets()
assets = json.loads(assets_json)
print(f"Found {len(assets)} assets")

# List trading pairs
pairs_json = client.list_pairs()
print(pairs_json)

# Get a quote (returns JSON string)
# Use get_best_quote for optimal routing (supports cross-protocol)
quote_json = client.get_best_quote(
    "BTC/USDT",
    1_000_000,  # 0.01 BTC (satoshis)
    None,       # to_amount
)
quote = json.loads(quote_json)
print(f"Quote Price: {quote.get('price')}")

# Legacy operations (Strongly Typed)
# These methods accept dictionaries or Pydantic models instead of JSON strings
init_request = {
    "rfq_id": quote["rfq_id"],
    "from_asset": quote["from_asset"]["asset_id"],
    "to_asset": quote["to_asset"]["asset_id"],
    "from_amount": quote["from_asset"]["amount"],
    "to_amount": quote["to_asset"]["amount"]
}
init_result_json = client.init_swap(init_request)
init_result = json.loads(init_result_json)
print(f"Payment Hash: {init_result['payment_hash']}")
```

## Development

### Building from Source

Requires Rust and maturin:

```bash
# Install maturin
pip install maturin

# Build in development mode
maturin develop

# Build release wheel
maturin build --release
```

### Running Tests

```bash
# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest tests/ -v
```

## License

MIT License - see [LICENSE](../../LICENSE) for details.