Metadata-Version: 2.4
Name: lightweight-charts-pro
Version: 0.1.0
Summary: Framework-agnostic Python core library for TradingView Lightweight Charts Pro
Author: Streamlit Lightweight Charts Contributors
License: MIT
Project-URL: Homepage, https://github.com/nandkapadia/streamlit-lightweight-charts-pro
Project-URL: Documentation, https://github.com/nandkapadia/streamlit-lightweight-charts-pro#readme
Project-URL: Repository, https://github.com/nandkapadia/streamlit-lightweight-charts-pro.git
Keywords: lightweight-charts,tradingview,charts,financial,trading,python
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandas>=2.0.0
Requires-Dist: numpy>=1.24.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Dynamic: license-file

# Lightweight Charts Pro (Python)

Framework-agnostic Python core library for TradingView Lightweight Charts Pro.

## Overview

This package provides the foundational Python classes and utilities used by all Python framework wrappers (Streamlit, Flask, Django, FastAPI, etc.).

## Features

- **Data Models**: Type-safe data classes for all chart types
- **Options Classes**: Comprehensive chart configuration options
- **Base Classes**: `BaseChart` and `BaseChartManager` for framework extensions
- **Validators**: Data validation and type checking
- **Type Definitions**: Enums and type hints
- **Exceptions**: Standardized error handling

## Installation

```bash
pip install lightweight-charts-pro
```

## Usage

```python
from lightweight_charts_pro.charts import BaseChart
from lightweight_charts_pro.charts.options import ChartOptions, LineOptions
from lightweight_charts_pro.data import LineData

# Use in your framework wrapper
class MyFrameworkChart(BaseChart):
    def render(self):
        # Framework-specific rendering logic
        pass
```

## Development

```bash
# Install in development mode
pip install -e .

# Run tests
pytest

# Type checking
mypy lightweight_charts_pro
```

## License

MIT
