semvec/pypi-packages huggingface dataset:
solaredge 1.1.1
Add your description here
Requires Python: >=3.10

# SolarEdge Monitoring API Client

A Python client library for the SolarEdge Monitoring API, providing both synchronous and asynchronous interfaces for accessing solar energy data.

See https://www.solaredge.com/sites/default/files/se_monitoring_api.pdf

## Table of Contents

- [Features](#features)
- [Installation](#installation)
- [Quick Start](#quick-start)
  - [Synchronous Usage](#synchronous-usage)
  - [Asynchronous Usage](#asynchronous-usage)
- [Rate Limiting & Best Practices](#rate-limiting--best-practices)
- [Development](#development)
- [API Documentation](#api-documentation)

## Features

- **Sync & Async Support**: Choose between `MonitoringClient` (sync) and `AsyncMonitoringClient` (async)
- **Full API Coverage**: All monitoring endpoints supported
- **Type Hints**: Complete type annotations for better IDE support
- **Rate Limiting**: Built-in awareness of API limits (3 concurrent requests)
- **Context Manager Support**: Automatic resource cleanup

## Installation

```bash
pip install solaredge
poetry add solaredge
uv add solaredge
```

## Quick Start

### Synchronous Usage

```python
from solaredge import MonitoringClient

# Basic usage
client = MonitoringClient(api_key="YOUR_API_KEY")
sites = client.get_site_list()
client.close()

# Context manager (recommended)
with MonitoringClient("YOUR_API_KEY") as client:
    site_details = []
    sites = client.get_site_list()
    for site in sites['sites']['list']:
        site_details.append(
            client.get_site_details(
                site_id=site['id'],
            )
        )
```

### Asynchronous Usage

```python
import asyncio
from solaredge import AsyncMonitoringClient

async def main():
    async with AsyncMonitoringClient(api_key="YOUR_API_KEY") as client:
        sites = await client.get_site_list()
        
        # Concurrent requests (respecting 3 concurrent limit)
        tasks = []
        for site in sites['sites']['list']:  
            task = client.get_site_details(site_id=site['id'])
            tasks.append(task)
        
        site_details = await asyncio.gather(*tasks)

asyncio.run(main())
```

## Rate Limiting & Best Practices

- **Daily limit**: 300 requests per API Key and per site ID 
- **Concurrency**: Maximum 3 concurrent requests from same IP
- **Bulk operations**: Up to 100 site IDs per bulk request

for more information see [page 8](https://www.solaredge.com/sites/default/files/se_monitoring_api.pdf) of the api documentation 


## Development

```bash
# Install development dependencies
uv sync
uv run pre-commit install -t commit-msg
```

```bash
# Commiting changes
uv run cz c
```

## API Documentation

For detailed API documentation including all parameters and response formats, see:
- [SolarEdge Monitoring API Documentation](docs/SE_monitoring_API.md)
- [Official API Reference](https://www.solaredge.com/sites/default/files/se_monitoring_api.pdf)
algobowl 2025.8.31.1
Competition-based group project for Algorithms courses
Requires Python: <4,>=3.9

# AlgoBOWL

AlgoBOWL is a group project for algorithms courses.  Students compete to create
heuristics to an NP-hard problem.  For more information, see the paper in
[ITiCSE 2019](https://doi.org/10.1145/3304221.3319761).

This is the AlgoBOWL web application, as well as associated tools (e.g., command
line interface).

## Getting Started

The rest of this `README` assumes you're interested in hacking on the AlgoBOWL
code, and want to install the web app locally.  For other topics of interest,
check out the `docs/` directory.

You'll need a system running Linux and Python 3.9+.

Create and activate a virtual environment to install in:

```shellsession
$ python3 -m venv venv
$ . venv/bin/activate
```

Next, install the app in editable mode::

```shellsession
$ pip install -e ".[dev]"
```

Next, copy the sample development config and setup the application::

```shellsession
$ cp development.ini.sample development.ini
$ gearbox setup-app
```

Finally, you can serve the app::

```shellsession
$ gearbox serve --reload --debug
```

Have fun!
hyperfast-course-template 0.2.1
Multilingual course creation template with interactive documentation support for international audiences
Requires Python: <4.0,>=3.9
Keywords: python

# Course Template Internationalization

[![pypi-image]][pypi-url]
[![version-image]][release-url]
[![release-date-image]][release-url]
[![license-image]][license-url]
[![codecov][codecov-image]][codecov-url]
[![jupyter-book-image]][docs-url]

<!-- Links: -->
[codecov-image]: https://codecov.io/gh/entelecheia/hyperfast-course-template/branch/main/graph/badge.svg?token=c9wCeiRNH7
[codecov-url]: https://codecov.io/gh/entelecheia/hyperfast-course-template
[pypi-image]: https://img.shields.io/pypi/v/hyperfast-course-template
[license-image]: https://img.shields.io/github/license/entelecheia/hyperfast-course-template
[license-url]: https://github.com/entelecheia/hyperfast-course-template/blob/main/LICENSE
[version-image]: https://img.shields.io/github/v/release/entelecheia/hyperfast-course-template?sort=semver
[release-date-image]: https://img.shields.io/github/release-date/entelecheia/hyperfast-course-template
[release-url]: https://github.com/entelecheia/hyperfast-course-template/releases
[jupyter-book-image]: https://jupyterbook.org/en/stable/_images/badge.svg

[repo-url]: https://github.com/entelecheia/hyperfast-course-template
[pypi-url]: https://pypi.org/project/hyperfast-course-template
[docs-url]: https://hypercourse.entelecheia.ai
[changelog]: https://github.com/entelecheia/hyperfast-course-template/blob/main/CHANGELOG.md
[contributing guidelines]: https://github.com/entelecheia/hyperfast-course-template/blob/main/CONTRIBUTING.md
<!-- Links: -->

Multilingual course creation template with interactive documentation support for international audiences

- Documentation: [https://hypercourse.entelecheia.ai][docs-url]
- GitHub: [https://github.com/entelecheia/hyperfast-course-template][repo-url]
- PyPI: [https://pypi.org/project/hyperfast-course-template][pypi-url]

This project provides a comprehensive and flexible template for creating and managing multilingual online courses. It leverages GitHub for version control and Jupyter Book for interactive content delivery, enabling educators to easily develop, maintain, and share their educational materials across different languages and cultures.

## Changelog

See the [CHANGELOG] for more information.

## Contributing

Contributions are welcome! Please see the [contributing guidelines] for more information.

## License

This project is released under the [CC-BY-4.0 License][license-url].