Metadata-Version: 2.4
Name: sylriekit
Version: 0.27.1
Summary: A personal Python toolbox of utilities.
Author: Kasterfly
License-Expression: MIT
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests
Requires-Dist: tiktoken
Requires-Dist: redis
Requires-Dist: cryptography
Requires-Dist: uvicorn
Requires-Dist: starlette
Requires-Dist: webviewpy
Requires-Dist: python-telegram-bot
Requires-Dist: maturin
Requires-Dist: pyinstaller
Dynamic: license-file

## Sylriekit
A personal kitchen sink toolset I made for myself to speed up the creation of some random personal projects.

**Warning**: This is a personal project and may contain bugs or incomplete features. It is mainly coded for convenience over optimization. Use at your own risk.

---
## Tools
### API
 - Simple API server and client with optional end-to-end encryption, sessions, rate limiting, and fingerprinting.
### ConfigLoader
 - A lightweight configuration manager that merges default values with optional external config data.
### Database
 - SQLite-first instance-based database utility with schema helpers, CRUD/query methods, and algorithm transforms.
### Files
 - A cross-platform file and directory utility with path shortcut syntax.
### JHL
 - Compiles HTML files by running `.jhl` scripts linked to or embedded in them, allowing for dynamic content generation.
### JHtml
 - Bidirectional converter between HTML strings and a structured JSON node tree.
### LLM
 - Multi-provider LLM client with tool calling, streaming, chat management, and threaded background processing.
### Redis
 - Redis client with session storage, rate limiting, function caching, and auto-start.
### ReLib
 - A chainable regex builder and text extraction utility.
### Rust
 - Compile Rust code into importable Python modules via PyO3 and maturin.
### Telegram
 - Telegram Bot API wrapper with background polling, message caching, rate limiting, and media support.
### TTS
 - Multi-provider text-to-speech client with voice management, playback queues, and audio file support.
### Window
 - HTML-based GUI application powered by webview with optional API hooks and JHL compilation.
---

### Change Log:
**0.27.0**:
 - Added API tool: a simple API server and client with end-to-end encryption, sessions, rate limiting, and fingerprinting.
 - Added LLM tool: a multi-provider LLM client supporting tool calling, streaming, and chat management.
 - Added Redis tool: a Redis client with session storage, rate limiting, function caching, and auto-start.
 - Added Rust tool: compile Rust code into importable Python modules via PyO3 and maturin.
 - Added Telegram tool: a Telegram Bot API wrapper with background polling and media support.
 - Added TTS tool: a multi-provider text-to-speech client with voice management and playback queues.
 - Added Window tool: an HTML-based GUI application powered by webview with API hooks and JHL compilation.

**0.26.0**:
 - Deleted all tools and reworked the entire system to be more modular and instance-based, allowing for better organization and easier maintenance. Each tool is now an instance of a class, and they can be easily imported and used in different projects without relying on static classes.
 - Added a new tool called ConfigLoader, which is responsible for loading configuration settings for all tools.
 - Added a new tool called ReLib, which provides a collection of common regular expression patterns for easy use in various projects.
 - Removed a lot of the features of the File tool.
 - Added a new tool called JHtml and JHL which are used to convert HTML to JSON and back, as well as a build-time interpreted language for JHtml.

**0.25.9**:
 - Reworked the JHtml entirely, now it is one-way JSON to HTML and not reversible from pure HTML. It also has a built-in interpreted language (jhl) that allows build-time scripts.

**0.25.8**:
 - Updated the logging of the MCP tool.

**0.25.7**:
 - Added support so that private functions (starting with underscore) will not showup to the js bridge endpoint anymore in the Website, InlinePython, or Window tools.

**Previous change log entries are visible in the description of older versions**
