Metadata-Version: 2.4
Name: ecostyles
Version: 0.2.0
Summary: Custom Altair themes and styling utilities
Author: Josh Hellings
Maintainer: Josh Hellings
License: MIT
Project-URL: Homepage, https://github.com/jhellingsdata/ecostyles
Project-URL: Repository, https://github.com/jhellingsdata/ecostyles.git
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: altair>=6.2.0
Requires-Dist: pandas>=1.1.3
Requires-Dist: vl-convert-python>=1.7.0
Requires-Dist: country-converter>=1.0.0
Provides-Extra: test
Requires-Dist: pytest>=6.0.0; extra == "test"
Requires-Dist: pytest-cov>=3.0.0; extra == "test"
Provides-Extra: dev
Requires-Dist: ipykernel>=6.0.0; extra == "dev"
Requires-Dist: nox>=2024.0.0; extra == "dev"
Requires-Dist: bump-my-version>=0.28.0; extra == "dev"
Dynamic: license-file

# ecostyles

A Python package for consistent Altair chart styling and themes.

## Installation

You can install the package directly from GitHub:

```bash
pip install git+https://github.com/jhellingsdata/ecostyles.git
```

## Usage

```python
from ecostyles import EcoStyles

# Create styles instance
styles = EcoStyles()

# Register and enable a theme
styles.register_and_enable_theme(theme_name="article")  # or "cotd", "newsletter"

# Create your Altair chart
import altair as alt
chart = alt.Chart(data).mark_line().encode(...)

# Use helper methods
chart_with_source = styles.add_source(chart, "ONS")   # returns a new chart; multi-line supported
styles.save(chart, "path/to/save", "chart_name")       # or styles.save(chart, name="chart_name") to save to cwd
```

## Features

- Pre-defined color palettes and themes
- Helper methods for common chart modifications
- Consistent styling across projects
- Support for dark mode
- Easy export to various formats

## Requirements

- Python >= 3.10
- altair >= 6.2.0
- pandas >= 1.1.3
- vl-convert-python >= 1.7.0
- country-converter >= 1.0.0

## License

This project is licensed under the MIT License - see the LICENSE file for details.
