semvec/pypi-packages huggingface dataset:
UI4AI 0.1.2
A Streamlit UI for LLM chat applications with persistence and chat history
Requires Python: >=3.7
Keywords: streamlit, chat, ui, llm, chatbot, conversation, ai, openai, UI4AI, UI4AI PYPI, UI4AI package

# UI4AI

A simple, lightweight, and plug-and-play Streamlit-based UI for LLM chatbot applications.

---

## 🚀 Features

- Plug in your own `generate_response` function
- Built-in sidebar history and session management
- Optional extras:
  - Title generation
  - Token counting
  - Max history control
  - Customizable and editable conversation history titles
  - Persistent session state: continue your chat even after restarting the app

---

## 📦 Installation

```bash
  pip install UI4AI
```

---

## 🧠 Basic Usage

```python
from UI4AI import run_chat
import openai

openai.api_key = "<YOUR_API_KEY>"

def generate_response(messages) -> str:
    try:
        response = openai.ChatCompletion.create(
            model="gpt-4",
            messages=messages,
            temperature=0.7
        )
        return response.choices[0].message.content
    except Exception as e:
        raise RuntimeError(f"Response generation failed: {str(e)}")

run_chat(
    generate_response=generate_response,
    title="My Chatbot",
    sidebar=True,
    session_state=True,
    token_counting=True
)
```

---

## ▶️ Running the App

```bash
  streamlit run app.py  # Or replace with your own script name
```

---

## 🎨 Customization Options

You can customize the UI with these optional parameters:

```python
run_chat(
    generate_response: Callable[[List[Dict]], str],
    page_title: str = "AI Chat", 
    title: str = "Conversational Bot",
    layout: str = "wide",
    new_conversation: str = "➕ New Chat",
    chat_placeholder: str = "Ask me anything...",
    sidebar_instructions: str = "Conversation History",
    spinner_text: str = "Thinking...",
)
```

---

## 🔧 Additional Features

### 🧠 Title Generation  
>Automatically generates a conversation title.

### 🔢 Token Counting  
>Displays the total token count used in the conversation.  

### 🕒 Customizable Max History  
Control how many messages are remembered in the chat history.  
> For example, if you first ask “Who is Spider-Man?” When you later ask “Name all his movies?”, it assumes “his” means Spider-Man this is because of history.

### 📝 Customizable Conversation Titles
>You can edit or customize the title of any conversation in the history sidebar for better organization.

### 💾 Persistent Sessions
>Session state is stored automatically, so your chat history and context are preserved. You can continue your conversation even if you restart or refresh the app!

### 📚 Sidebar History  
>View and click through previous conversation threads in the sidebar.  

### 💾 Persistent Sessions  
>Your chat history persists even after refreshing the page or even restarting app. You can return and continue where you left off!
powerline-diskspace 0.1.3
A Powerline segment for displaying local disk utilization.
Requires Python: >=3.8

# Powerline Disk Utilization Indicator

A tiny [Powerline](https://github.com/powerline/powerline) segment I wrote (originally for `tmux`) to show me disk space utilization in its status line. This component does not work natively with `tmux` - if you just want a native tmux-specific component, check out [tmux-df](https://github.com/tassaron/tmux-df).

Here is a screenshot of this segment in action:

![disk utilization example](doc/img/powerline-diskspace-screenshot.png)

The root `/` is red because, unlike `/cache`, it's over the `critical_threshold` I set to 40% for this example.

In this case, the relevant part of the powerline config (`cat ~/.config/powerline/themes/tmux/default.json`) is:

```json
{
"segments": {
  "right": [
    {
      "function": "powerline_diskspace.diskspace.Diskspace",
      "priority": 30,
      "args": {
        "format": "{mounted_on} @ {capacity:.0f}%",
        "mount_ignore_pattern": "(/snap|/dev|/run|/boot|/sys/fs)",
        "show_when_used_over_percent": {
          "/": 20,
        },
        "critical_threshold": 40
      }
    }
  ]
}
}
```

(Other plug-ins featured in the screenshot, like `uptime`, are not shown.)

## Getting Started

System requirements:
 * Linux (macOS support is only partial)
 * Python 3.8+
 * [Powerline](https://github.com/powerline/powerline) set up and in use (code only tested in tmux, but other places like `vim` should work to)

Installation steps:

1. Install the Python package: `pip install powerline-diskspace`.
2. Update your `powerline` (not `tmux`!) config following the example above.
3. Restart the Powerline daemon: `powerline-daemon --replace`

If you have any questions or encounter issues setting up, please don't hesitate to open up an issue on GitHub!


## Customization

There are many ways to customize your output. Please refer to the `__call__` method in `diskspace.py`, which is essentially the "main function" of the segment for more documentation.

## Development

### Testing

1. Create a test environment, e.g., with venv or conda.
2. Ensure `powerline-status` and `pytest` are installed in your test environment.
3. Run `pytest` inside the `powerline_diskspace` folder.

### Deployment

1. Read [the official guide](https://packaging.python.org/en/latest/tutorials/packaging-projects/#generating-distribution-archives) to refresh your memory, if needed.
2. `pip install --upgrade build twine`
3. `python3 -m build`
4. `python3 -m twine upload  --verbose dist/*`
image-processing-cesar94 0.0.1
Image Processing Package using Skimage
Requires Python: >=3.5

# image_processing_cesar-94

Description. 
The package package_name is used to:
	Processing:
		- Histrogram matching
		- Structural similarity
		- Resize image
	Utils:
		- Read image
		- Save image
		- Plot image
		- Plot result
		- Plot histrogram

## Installation

Use the package manager [pip](https://pip.pypa.io/en/stable/) to install package_name

```bash
pip install package_name
```


## Author
CÃ©sar

## License
[MIT](https://choosealicense.com/licenses/mit/)
app-settings-pydantic 1.0.0
A simple configuration management package using `pydantic-settings` and `platformdirs`
Requires Python: >=3.13

# app-settings-pydantic

A simple configuration management package using `pydantic-settings` and `platformdirs`.

This package allows you to define application settings in a `.env` file stored in the user's configuration directory.

## Features

- Automatically determines the appropriate configuration file location using `platformdirs`
- Uses `pydantic-settings` for settings validation and management
- Supports configuration before use via the `configure()` function
- Provides a `.save()` method to persist settings

## Installation

```bash
pip install app-settings-pydantic
```

## Usage

### 1. Configure the app

Before using `Settings`, you must configure the package with app name and default language.

```python
from app_settings import configure

configure(app_name="my_app", default_language="en")
```

### 2. Use the Settings class

```python
from app_settings import Settings

settings = Settings()
```

### 3. Save settings

```python
settings.language = "pl"
settings.save()  # Saves to ~/.config/my_app/.env (Linux)
```

## Configuration Path

The configuration file is stored in the user config directory provided by `platformdirs`, e.g.:

- **Linux**: `~/.config/<app_name>/.env`
- **macOS**: `~/Library/Application Support/<app_name>/.env`
- **Windows**: `C:\Users\<User>\AppData\Local\<app_name>\.env`

## Fields

Currently, the settings class includes:

- `language`: Application language (default from `configure()`, supports "en" and "pl")

## Errors

If `configure()` is not called before accessing `Settings`, a `RuntimeError` will be raised.

## License

MIT