Metadata-Version: 2.4
Name: Ter-FX
Version: 1.0.1
Summary: A modern Python terminal utility library with text effects, loading animations, spinners, progress bars, and interactive input.
Author-email: Faizan-ur-Rahim <terfx.dev@gmail.com>
License-Expression: MIT
Keywords: terminal,cli,console,python,effects,loading,spinner,progress
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE.md
Dynamic: license-file

# ✨ Ter-FX

> **Build beautiful terminal applications with ease.**

Ter-FX is a lightweight, beginner-friendly Python package that helps you create modern terminal applications. Whether you're making command-line tools, shell emulators, installers, games, or automation scripts, Ter-FX provides colorful output, interactive input, loading effects, logging utilities, and a built-in command-line interface.

---

## Features

* 🎨 ANSI color support
* 🖨️ Simple colored printing
* ⌨️ Interactive user input
* 🔢 Number input validation
* 🔒 Hidden password input
* 📍 Centered text
* ⌛ Typewriter text effect
* 🌀 Animated spinners
* 📊 Progress bars
* ⏳ Loading animations
* 📝 Logging system
* 🖥️ Built-in CLI
* ⚡ Lightweight
* 🐍 Pure Python

---

## Installation

### Install from PyPI

```bash
pip install terfx
```

### Install from source

```bash
git clone https://github.com/YOUR_USERNAME/terfx.git

cd terfx

pip install -e .
```

---

# Quick Start

```python
from terfx import Console

Console.printin("Hello, World!", "green")
```

Output

```text
Hello, World!
```

---

# Console

## Printing Text

```python
Console.printin("Hello!", "green")
```

---

## Typewriter Effect

```python
Console.printout(
    "Welcome to Ter-FX!",
    "cyan",
    speed=0.03
)
```

---

## User Input

```python
name = Console.input(
    "Enter your name: ",
    "yellow"
)
```

---

## Number Input

```python
age = Console.numinput(
    "Enter your age: "
)
```

Supports both integers and decimal numbers.

---

## Password Input

```python
password = Console.passinput(
    "Password: "
)
```

Input remains hidden while typing.

---

## Center Text

```python
Console.printcenter(
    "Welcome!",
    "magenta"
)
```

---

# Effects

## Spinner

```python
Console.spinner(
    "Loading",
    3,
    "cyan"
)
```

---

## Loading Screen

```python
Console.loadscr(
    "Installing",
    5,
    "green"
)
```

---

## Progress Bar

```python
for i in range(101):
    Console.progress(i, 100)
```

---

# Log

```python
from terfx import Log
```

## Info

```python
Log.info("Connecting...")
```

---

## Success

```python
Log.success("Connected!")
```

---

## Warning

```python
Log.warning("Low memory!")
```

---

## Error

```python
Log.error("Connection failed!")
```

---

## Debug

```python
Log.debug("Variable x = 42")
```

---

# Available Colors

```
black
red
green
yellow
blue
magenta
cyan
white
```

Example

```python
Console.printin(
    "Blue Text",
    "blue"
)
```

---

# Command Line Interface

Ter-FX installs a command-line utility.

## Show package information

```bash
terfx
```

---

## Show help

```bash
terfx --help
```

---

## Show version

```bash
terfx --version
```

---

## Run demo

```bash
terfx demo
```

---

## Show supported colors

```bash
terfx colors
```

---

## Package information

```bash
terfx info
```

---

## Examples

```bash
terfx examples
```

---

## Run tests

```bash
terfx test
```

---

## Credits

```bash
terfx credits
```

---

## License

```bash
terfx license
```

---

# Complete Example

```python
from terfx import Console

Console.printcenter("Ter-FX Demo", "cyan")

name = Console.input(
    "Enter your name: ",
    "green"
)

Console.printout(
    f"Welcome {name}!",
    "yellow"
)

Console.spinner(
    "Loading",
    2
)

for i in range(101):
    Console.progress(i, 100)

Console.printin(
    "Finished!",
    "green"
)
```

---

# Project Structure

```
terfx/
│
├── __init__.py
├── cli.py
├── colors.py
├── console.py
├── decorators.py
├── log.py
```

---

# Requirements

* Python **3.9+**
* Windows
* Linux
* macOS

---

# Roadmap

Planned features:

* More terminal effects
* Tables
* Boxes
* Menus
* Better CLI framework
* Themes
* RGB colors
* Cursor control
* Text styling
* Terminal widgets
* More decorators

---

# Contributing

Contributions are welcome.

You can help by:

* Reporting bugs
* Suggesting features
* Improving documentation
* Optimizing code
* Creating examples

---

# License

This project is licensed under the MIT License.

---

# Author

**Faizan-ur-Rahim**

Created with ❤️ using Python.
