semvec/pypi-packages huggingface dataset:
fauthy-python-sdk 0.3.0
SDK to consume Fauthy API from a FastAPI application.
Requires Python: >=3.13

# Fauthy Python SDK

A Python SDK for interacting with the Fauthy API.

## Installation

```bash
pip install fauthy-python-sdk
```

## Usage

### Basic Setup

```python
from fauthy_sdk import FauthyClient

# Initialize the client
client = FauthyClient(
    client_id="your_client_id",
    client_secret="your_client_secret"
)
```

### Management API

The SDK provides access to the Fauthy Management API v1 endpoints.

#### Get Management Info

```python
response = client.get_management_info()
print(response.json())
```

#### List Users

```python
# Basic listing
response = client.list_users()

# With pagination and search
response = client.list_users(
    page=1,
    query="john",
    per_page=20
)

# With custom claims filtering
custom_claims = {
    "company": "Test Corp",
    "department": "Engineering"
}
response = client.list_users(
    page=1,
    query="",
    per_page=10,
    custom_claims_filter=custom_claims
)
```

#### Create User

```python
response = client.create_user(
    email="user@example.com",
    first_name="John",
    last_name="Doe",
    roles=["role_uuid_1", "role_uuid_2"],
    custom_claims={
        "company": "Test Corp",
        "department": "Engineering"
    },
    mark_as_verified=True
)
```

#### Get User

```python
response = client.get_user("user_uuid")
```

#### Update User

```python
response = client.update_user(
    user_id="user_uuid",
    first_name="Jane",
    last_name="Smith",
    email="jane@example.com"
)
```

#### Delete User

```python
response = client.delete_user("user_uuid")
```

#### Set User Password

```python
response = client.set_user_password(
    user_id="user_uuid",
    password="new_secure_password"
)
```

#### List Roles

```python
# Basic listing
response = client.list_roles()

# With pagination
response = client.list_roles(
    page=1,
    n_per_page=50
)
```

## Custom Claims Filtering

The SDK supports filtering users by custom claims using the `custom_claims_filter` parameter in the `list_users` method. This allows you to filter users based on their custom JWT claims.

### Example

```python
# Filter users by company and department
custom_claims = {
    "company": "Test Corp",
    "department": "Engineering"
}

response = client.list_users(
    page=1,
    per_page=20,
    custom_claims_filter=custom_claims
)
```

This will send a request with query parameters like:
- `claim_company=Test Corp`
- `claim_department=Engineering`

The API will return only users whose custom claims match these values.

## Error Handling

The SDK raises `requests.exceptions.RequestException` for HTTP errors. You can handle these exceptions to manage API errors:

```python
import requests

try:
    response = client.get_user("user_uuid")
    print(response.json())
except requests.exceptions.RequestException as e:
    print(f"API Error: {e}")
```

## Response Format

All methods return a `requests.Response` object. You can access the JSON data using:

```python
response = client.list_users()
data = response.json()
print(f"Total users: {data['total']}")
print(f"Users: {data['items']}")
```
vandc 0.1.9
Wandb but without any features
Requires Python: >=3.8

# vandc

like wandb but without any of the features

## demo

```
$ uv run demo/example.py --d 1000 --beta 0.1
Starting run: have-remain-main-day
Config:
  seed: 42
  d: 1000
  beta: 0.1
  iters: 1000

   Iters      Elapsed Time        Speed       value
 1000/1000  00:00:00<00:00:00  45386.02it/s  8.77+02
100.0% |█████████████████████████████████████████████████████████████████████████████████████|
$ # (run more experiments)
$ uv run python
>>> import vandc
>>> for r in vandc.fetch_all(command_glob="demo/example%", this_commit=True):
...     print(r)
...
<show-new-father-lot (1000 logs): demo/example.py --d 1000 --beta 0.1>
<might-democratic-national-name (1000 logs): demo/example.py --d 1000 --beta 0.2>
<happen-ready-city-law (1000 logs): demo/example.py --d 1000 --beta 0.3>
<fall-poor-party-friend (1000 logs): demo/example.py --d 1000 --beta 0.1>
<have-remain-main-day (1000 logs): demo/example.py --d 1000 --beta 0.1>
>>> vandc.collate_runs(r for r in vandc.fetch_all() if r.config["beta"] <= 0.2)
            value  seed     d  beta  iters
step
0     1005.945312    42  1000   0.1   1000
1     1005.945312    42  1000   0.1   1000
2     1005.945312    42  1000   0.1   1000
3     1005.945312    42  1000   0.1   1000
4     1005.945312    42  1000   0.1   1000
...           ...   ...   ...   ...    ...
995    876.541138    42  1000   0.1   1000
996    876.541138    42  1000   0.1   1000
997    876.541138    42  1000   0.1   1000
998    876.541138    42  1000   0.1   1000
999    876.541138    42  1000   0.1   1000

[4000 rows x 5 columns]
$ uv run demo/graph.py
# (nice seaborn graph built from the collated dataframe)
```

You can also run the `vandc` script to select a single run interactively, and then fetch it using `vandc.fetch("run-name")`.
juham-systemstatus 0.1.14
Built-in system diagnosis for JuhaM
Requires Python: >=3.8
Keywords: object-oriented, plugin, framework

SystemStatus plugin for Juham™
==============================

Description
-----------

System status and diagnosis plugin to Juham™ home automation. When installed acquires and publishes
the following data:

* CPU load
* Available memory
* Available disk space
* Number of active threads

  
.. image:: _static/images/systemstatus.png
   :alt: Built-in status and diagnosis system for JuhaM™ home automation.
   :width: 640px
   :align: center  


Getting Started
---------------

### Installation

1. Install

   .. code-block:: bash

      pip install juham-systemstatus


2. Configure

Works right out of the box. To adjust update interval and other attributes
edit `SystemStatus.json` configuration file.
sfai 11.0.2
test
Keywords: test


# anupamas011
 <img src="[https://s3.amazonaws.com/nrjio/interactive.gif](https://compote.slate.com/images/697b023b-64a5-49a0-8059-27b963453fb1.gif?crop=780%2C520%2Cx0%2Cy0&width=1280)https://compote.slate.com/images/697b023b-64a5-49a0-8059-27b963453fb1.gif?crop=780%2C520%2Cx0%2Cy0&width=1280" alt="Interactive notifications example" width=350/>
juham-visualcrossing 0.1.10
A Weather forecast  plugin extending `Juham` applications
Requires Python: >=3.8
Keywords: object-oriented, plugin, framework

VisualCrossing forecast plugin for Juham™
=========================================

Description
-----------

Adds forecast support to Juham™ home automation.

.. image:: _static/images/visualcrossing.png
   :alt: Solar and temperature forecasts
   :width: 640px
   :align: center  


Project Status
--------------

**Current State**: **Alpha (Status 3)**  

Please check out the `CHANGELOG <CHANGELOG.rst>`_ file for changes in this release.



Getting Started
---------------

### Installation

1. Install

   .. code-block:: bash

      pip install juham_visualcrossing


2. Configure

   - ``VisualCrossing.json``: Add your Visual Crossing API key for weather forecasts.
juham-simulation 0.1.3
Simulation plugin for Juham
Requires Python: >=3.8
Keywords: juham, masterpiece, plugin, framework, simulation, home automation

Simulation plugin for Juham™
============================

Overview
--------
This package provides simulation classes for water and power meters. 
It is designed for testing and development of IoT applications that use
MQTT-based sensors. The simulations generate realistic, time-based 
data that can be published to a broker without requiring physical devices.


WaterMeterSim
-------------

**Description:** Simulates a water meter sensor.  
**Functionality:**
- Generates water consumption readings (`active_liter_lpm` and cumulative `total_liter`).
- Publishes readings to a configurable MQTT topic at a specified interval.
- Supports integration into threaded applications.

  
PowerMeterSim
-------------
**Description:** Simulates a power/energy meter sensor.  
**Functionality:**
- Generates active power readings for three phases and total consumption.
- Publishes readings to a configurable MQTT topic at a specified interval.
- Supports integration into threaded applications.


Installation
------------

1. Install 

   .. code-block:: bash

      pip install juham-simulation

      
2. Configure

To configure edit the `*.json` configuration files to match your network and
desired reading frequency in seconds.

   .. code-block:: json

      {
	"update_interval": 60
      }