Metadata-Version: 2.4
Name: moddingtextparser
Version: 2025.12.21151340
Summary: A new package is designed to analyze user-provided text questions about technical modding topics to identify key concepts, such as detecting mentions of premium checks within Android app modifications
Author-email: moddingtextparser <hi@eugene.plus>
License: MIT
Project-URL: Homepage, https://github.com/chigwell/moddingtextparser
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: langchain-llm7>=0.0.0
Requires-Dist: llmatch-messages>=0.0.0
Requires-Dist: langchain-core>=0.3.0

# ModdingTextParser
[![PyPI version](https://badge.fury.io/py/moddingtextparser.svg)](https://badge.fury.io/py/moddingtextparser)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
[![Downloads](https://static.pepy.tech/badge/moddingtextparser)](https://pepy.tech/project/moddingtextparser)
[![LinkedIn](https://img.shields.io/badge/LinkedIn-blue)](https://www.linkedin.com/in/eugene-evstafev-716669181/)


ModdingTextParser is a Python package designed to analyze user-provided text questions about technical modding topics. It identifies key concepts such as mentions of premium checks within Android app modifications using structured pattern matching. This tool enables developers or researchers to automate the understanding of modding practices based on text descriptions, without processing multimedia content.

## Features

- Extracts relevant details from user input text.
- Identifies references to premium check mechanisms in Android applications.
- Uses structured pattern matching for accurate analysis.
- Supports custom LLM instances for flexible integration.

## Installation

```bash
pip install moddingtextparser
```

## Usage

### Basic Usage

```python
from moddingtextparser import moddingtextparser

response = moddingtextparser("How do I bypass premium checks in Android apps?")
print(response)
```

### Using a Custom LLM

You can use any LLM compatible with LangChain. Here are examples with different LLMs:

#### Using OpenAI

```python
from langchain_openai import ChatOpenAI
from moddingtextparser import moddingtextparser

llm = ChatOpenAI()
response = moddingtextparser("How do I bypass premium checks in Android apps?", llm=llm)
print(response)
```

#### Using Anthropic

```python
from langchain_anthropic import ChatAnthropic
from moddingtextparser import moddingtextparser

llm = ChatAnthropic()
response = moddingtextparser("How do I bypass premium checks in Android apps?", llm=llm)
print(response)
```

#### Using Google

```python
from langchain_google_genai import ChatGoogleGenerativeAI
from moddingtextparser import moddingtextparser

llm = ChatGoogleGenerativeAI()
response = moddingtextparser("How do I bypass premium checks in Android apps?", llm=llm)
print(response)
```

## Parameters

- `user_input` (str): The user input text to process.
- `llm` (Optional[BaseChatModel]): The LangChain LLM instance to use. If not provided, the default `ChatLLM7` will be used.
- `api_key` (Optional[str]): The API key for LLM7. If not provided, the environment variable `LLM7_API_KEY` will be used.

## Default LLM

By default, ModdingTextParser uses `ChatLLM7` from [langchain_llm7](https://pypi.org/project/langchain-llm7/). You can safely pass your own LLM instance if you want to use another LLM.

## Rate Limits

The default rate limits for LLM7 free tier are sufficient for most use cases of this package. If you want higher rate limits for LLM7, you can pass your own API key via the environment variable `LLM7_API_KEY` or directly via the `api_key` parameter. You can get a free API key by registering at [LLM7](https://token.llm7.io/).

## Issues

If you encounter any issues, please report them on the [GitHub issues page](https://github.com/chigwell/moddingtextparser/issues).

## Author

- **Eugene Evstafev**
- **Email**: hi@eugene.plus
- **GitHub**: [chigwell](https://github.com/chigwell)
