Metadata-Version: 2.4
Name: duter
Version: 0.1.0
Summary: Summon a sprite: a magical being appears and sparks of joy bloom, ending with HAPPINESS glowing in the sky — one line of magic, zero dependencies, and a little joy.
Author: halibote
License-Expression: MIT
Project-URL: Homepage, https://github.com/halibote-bit/duter
Keywords: duter,sprite,happiness,joy,animation,tkinter,magic,toy
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Games/Entertainment
Classifier: Topic :: Multimedia :: Graphics
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# duter ✨

Summon a sprite with one line of Python: a magical being appears, dances across a starry sky,
sparks of joy bloom around it — and at the end, **HAPPINESS**
appears in rainbow colours, one letter at a time.

Run the window whenever you need it: it just might bring you a good mood
and a little joy. 🌟

**Zero third-party dependencies** — pure standard-library `tkinter`.

```python
import duter
duter.summon()
```

While the window is open:

- **Click anywhere** — the sprite creates more sparks of joy
- **Esc** or close the window — end early

## API

```python
duter.summon(mood="rainbow", duration=8.0, finale="sparkle")
```

| Parameter  | Default     | Meaning                                                      |
|------------|-------------|--------------------------------------------------------------|
| `mood`    | `"rainbow"` | Colour theme: `rainbow`, `gold`, `silver`, `sunrise`, `ocean` |
| `duration` | `8.0`       | Rough show length in seconds (≥ 2); more sparks for longer shows |
| `finale`   | `"sparkle"` | Finale: sparkle sky + rainbow "HAPPINESS"; `None` to skip |

## Command line

```console
python -m duter
python -m duter --mood sunrise --duration 12
duter --mood gold --no-finale     # after `pip install duter`
```

## What happens on screen

1. A tiny sprite materializes from stardust at the bottom of a starry sky
2. It begins to dance, leaving trails of sparkling light
3. Bursts of joy explode around the sprite with colorful particles
4. ~100 particles bloom with gravity, drag, flicker, and colour cooling
   (white-hot → theme colour → dying ember)
5. Finale: sparkles fill the sky, and **HAPPINESS** glows in rainbow
   letters before gently fading away, then the window closes itself

## Requirements

- Python ≥ 3.8 with `tkinter` (included in the official installers on
  Windows and macOS; on Linux: `sudo apt install python3-tk` or equivalent)

## Development

```console
pip install build twine
python -m build
twine upload dist/*
```

## License

MIT
