semvec/pypi-packages huggingface dataset:
django5-upyun-storage 1.0.4
又拍云 Django5 存储后端
Requires Python: >=3.8
Keywords: django, upyun, storage, file upload

# Django5 又拍云存储

用于又拍云的 Django5 存储后端。

## 安装

```bash
pip install django5-upyun-storage
```

## 配置
在您的 Django settings.py INSTALLED_APPS 中添加以下设置：

```python
INSTALLED_APPS = [
    ...
    'django5_upyun_storage',
    ...
]
```


在您的 Django settings.py 中添加以下设置：

```python
UPYUN_STORAGE = {
    'SERVICE': '服务名称',
    'USERNAME': '授权账户',
    'PASSWORD': '授权密码',
    'DOMAIN': '绑定域名', # 可选，如果为空，则使用又拍云的默认域名 http://yourdomain.com
}

# 设置为默认存储器
STORAGES = {
    'default': {
        'BACKEND': 'django5_upyun_storage.storage.UpYunStorage',
    },
    'staticfiles': {
        'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage',
    }
}
```

## 使用

```python
from django.db import models

class YourModel(models.Model):
    file = models.FileField(upload_to='uploads/')
    image = models.ImageField(upload_to='images/')
```

## 特性

- 兼容 Django 5.0+
- 支持所有基本文件操作
- 处理文件删除
- 可配置的上传路径
- 支持静态文件存储

## 许可证

MIT 许可证

## 贡献

欢迎贡献！请随时提交拉取请求。
restackio.integrations.toolhouse 0.0.1
Toolhouse integration for Restack AI
Requires Python: <3.13,>=3.10

### Toolhouse Restack AI integration

This integration can be used in your project to interact with Toolhouse AI.
Currently it exposes two functions that can be used in any workflow.
One function to send emails, using the send email tool from the toolhouse store. So make sure this tool is installed in your account.
The second function demostrates how you can fetch content from any url and have chat gpt give you a summary, this is using the get page contents.

### Tools

The following tools need to be installed on your toolhouse account.

[Get page contents](https://app.toolhouse.ai/store/scraper)
[Send Email with Sengrid](https://app.toolhouse.ai/store/send_email)
pointsim 0.0.1
A module for simulating a point and controlling points.
Requires Python: >=3.9
Keywords: PID control point simulation

# pointsim
Проект создан для симуляции материальной точки для тестирования ПИД регуляторов и их коэффициентов.

# Установка
```
pip install git+https://github.com/OnisOris/pointsim
```
# Примеры
## 2D симуляция
```python
import matplotlib
import numpy as np
from pointsim.cython_pid import PIDController
from pointsim import StabilizationSimulator2D,  Point2D
matplotlib.use('Qt5Agg')

# Инициализируем PID-контроллер с коэффициентами
kp = [6.103582235784548, 6.103582235784548]
ki = [0, 0]
kd = [5.898832824054038, 5.898832824054038]
# pid_controller = PIDController(kp, ki, kd)
pid_controller = PIDController(np.array(kp, dtype=np.float64),
                                    np.array(ki, dtype=np.float64),
                                    np.array(kd, dtype=np.float64))

# Инициализируем точку
mass = 1.0
position = np.array([5.0, 5.0])  # Начальная позиция вдали от центра
speed = np.array([0.0, 0.0])  # Начальная скорость
point = Point2D(mass, position, speed)

# Создаем симулятор стабилизации с PID-регулятором
stabilization_simulator = StabilizationSimulator2D("PIDStabilizationSim", point, dt=0.1, pid_controller=pid_controller)

# Запускаем анимацию стабилизации с графиками
stabilization_simulator.animate()
```
![alt text](./img/Figure_1.png)

## 3D симуляция

```python
import matplotlib
from pointsim import StabilizationSimulator3D

matplotlib.use('Qt5Agg')

if __name__ == "__main__":
    simulator = StabilizationSimulator3D(
        name="PIDStabilizationSim",
        mass=1.0,
        position=[10.0, 10.0, 5.0],  # Начальное смещение
        speed=[0.0, 0.0, 0.0],
        kp=[1, 1, 1],  # Коэффициенты PID
        ki=[0.0, 0.0, 0.0],  # Интегральная часть отключена
        kd=[1, 1, 1],  # Дифференциальная часть
        dt=0.05,  # Шаг времени
        show_trajectory=True,  # Включаем отображение траектории
        max_acceleration=5
    )

    simulator.run_simulation(steps=1000)
```
![alt text](./img/Figure_2.png)

## 3D симуляция в реальном времени
```python
import numpy as np
import matplotlib
from pointsim import StabilizationSimulator3DRealTime

matplotlib.use('Qt5Agg')


if __name__ == "__main__":
    simulator = StabilizationSimulator3DRealTime(
        name="PIDRealTimeSim",
        mass=1.0,
        position=[10.0, 10.0, 5.0],
        speed=[0.0, 0.0, 0.0],
        kp=[1, 1, 1],
        ki=[0.0, 0.0, 0.0],
        kd=[1, 1, 1],
        dt=0.05,
        show_trajectory=True,
        max_acceleration=5

    )

    # Передаем внешний управляющий сигнал
    simulator.receive_external_signal(np.array([0.1, -0.2, 0.3]))

    # Запуск симуляции с анимацией
    simulator.animate_real_time()
```
![alt text](./img/Figure_3.png)
restackio.ai 0.0.11
Python Restack AI Core
Requires Python: <4.0,>=3.8

# Restack AI libraries

This is the Python Restack AI libraries.

## Installation

You can install the Restack AI libraries using pip:

### Using pip

```bash
pip install restack_ai
```

### Using Poetry

```bash
poetry add restack_ai
```

## Prerequisites

- Python 3.8 or higher
- Poetry (for dependency management)

## Usage

To use the libraries in your project, you can import it like this:

```python
from restack_ai import Restack
```

## Initialize the Restack client

```python
client = Restack()
```

## Documentation

For detailed usage instructions, please visit our examples repository at [https://github.com/restackio/examples-python](https://github.com/restackio/examples-python).

## Development

If you want to contribute to the libraries development:

1. Clone the repository and navigate to the `engine/libraries/python` directory.
2. Install Poetry if you haven't already: [https://python-poetry.org/docs/#installation](https://python-poetry.org/docs/#installation)
3. Install the project dependencies:

   ```bash
   poetry install
   ```

4. Activate the virtual environment:

   ```bash
   poetry shell
   ```
sectoralarm 1.2.0
A Python library for interacting with the Sector Alarm API.
Requires Python: >=3.6

# SectorAlarm Library

A Python client library for interacting with Sector Alarm systems.

## Overview

The `sectoralarm` library allows developers to interact with Sector Alarm systems programmatically. It provides methods to authenticate, retrieve system status, control locks, arm/disarm the alarm system, and access sensor data.

## Features

- **Authentication**: Securely log in to the Sector Alarm API.
- **System Status**: Retrieve panel status and sensor data.
- **Control Actions**: Arm/disarm the alarm system and lock/unlock doors.
- **Logs Access**: Access system logs and events.
- **Cache Management**: Efficiently cache data to minimize API calls.

## Installation

You can install the library via pip:

```bash
pip install sectoralarm
```

## Usage
### Importing the Library

```python
from sectoralarm import SectorAlarmAPI, AuthenticationError
```

### Initializing the API Client

```python
# Replace with your actual credentials
email = "your_email@example.com"
password = "your_password"
panel_id = "your_panel_id"
panel_code = "your_panel_code"

api = SectorAlarmAPI(email, password, panel_id, panel_code)
```

### Logging In

```python
try:
    api.login()
    print("Logged in successfully.")
except AuthenticationError as e:
    print(f"Authentication failed: {e}")
```

### Retrieving Panel Status
```python
status = api.retrieve_category_data("Panel Status")
print("Panel Status:")
print(status)
```

### Arming the System
```python
success = api.actions_manager.arm_system()
if success:
    print("System armed successfully.")
else:
    print("Failed to arm the system.")
```
    
### Disarming the System
```python
success = api.actions_manager.disarm_system()
if success:
    print("System disarmed successfully.")
else:
    print("Failed to disarm the system.")
```    

### Locking a Door
```python
lock_serial = "your_lock_serial_number"
success = api.actions_manager.lock_door(lock_serial)
if success:
    print("Door locked successfully.")
else:
    print("Failed to lock the door.")
```
    
### Unlocking a Door
```python
lock_serial = "your_lock_serial_number"
success = api.actions_manager.unlock_door(lock_serial)
if success:
    print("Door unlocked successfully.")
else:
    print("Failed to unlock the door.")
```    

## API Reference
Please refer to the code documentation and docstrings within the library for more detailed information on available methods and their usage.

## Dependencies
`requests`: Used for making HTTP requests to the Sector Alarm API.
License
This project is licensed under the MIT License - see the LICENSE file for details.

## Disclaimer
This library is not affiliated with or endorsed by Sector Alarm. Use it responsibly and at your own risk.

## Contributing
Contributions are welcome! Please submit a pull request or open an issue on GitHub.

## Contact
For questions or suggestions, please contact Jonathan Petersson <jpetersson@garnser.se>.