Metadata-Version: 2.1
Name: TaskFeasibilityAnalyzer
Version: 0.0.9
Summary: A Python package to determine the feasibility of coding tasks using GPT-3.
Home-page: https://github.com/chigwell/TaskFeasibilityAnalyzer
Author: Eugene Evstafev
Author-email: chigwel@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: openai
Requires-Dist: projectstructor
Requires-Dist: gptintegration ==0.0.3

[![PyPI version](https://badge.fury.io/py/TaskFeasibilityAnalyzer.svg)](https://badge.fury.io/py/TaskFeasibilityAnalyzer)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
[![Downloads](https://static.pepy.tech/badge/taskfeasibilityanalyzer)](https://pepy.tech/project/taskfeasibilityanalyzer)

# TaskFeasibilityAnalyzer

`TaskFeasibilityAnalyzer` is a Python package designed to determine the feasibility of coding tasks using GPT-3. It provides a probability score indicating whether a task can be completed successfully based on the project's structure, technology stack, and any other provided details.

## Installation

To install `TaskFeasibilityAnalyzer`, you can use pip:

```bash
pip install TaskFeasibilityAnalyzer
```

## Usage

### As a Python Module

`TaskFeasibilityAnalyzer` can be used as a Python module in your scripts.

#### Analyzing a Task's Feasibility

```python
from taskfeasibilityanalyzer import TaskFeasibilityAnalyzer

# Initialize the analyzer with the target directory, OpenAI API key, and optionally the project structure and languages
analyzer = TaskFeasibilityAnalyzer(
    directory='/path/to/your/project', 
    openai_api_key='your-openai-api-key',
    project_structure='your-project-structure',  # Optional
    project_languages='languages-used-in-your-project'  # Optional
)

# Analyze a task and get a probability score
task_description = "Refactor the database schema to improve performance."
probability = analyzer.analyze_task(task_description)
print(f"The probability that the task can be completed successfully is {probability:.2f}")
```

## Features

- **Integrates with GPT-3**: Leverages the power of GPT-3 to analyze the complexity and requirements of coding tasks.
- **Flexible Project Analysis**: Optionally uses ProjectStructoR or provided details to understand the project's structure and technology stack.
- **Probability Score**: Provides a numerical estimate indicating the feasibility of completing a task.

## Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the [issues page](https://github.com/chigwell/TaskFeasibilityAnalyzer/issues).

## License

This project is licensed under the [MIT License](https://choosealicense.com/licenses/mit/).


