Metadata-Version: 2.4
Name: spanlogger
Version: 1.0.0
Summary: Professional colored terminal logger with timestamps, symbols, and title bar support.
Author: rowsvips
License: MIT
Project-URL: Homepage, https://vmshops.mysellauth.com
Keywords: logger,terminal,colored,console,logging,ansi,cli
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Logging
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# spanlogger

Professional colored terminal logger for Python by **rowsvips**.

Zero dependencies. Thread-safe. Windows & Linux compatible.

## Install

```bash
pip install spanlogger
```

## Quick Start

```python
from spanlogger import Logger, Colors

log = Logger(title="MyApp", show_time=True)

log.info("Application started")
log.success("Connected to server")
log.warning("Rate limit approaching")
log.error("Connection failed")
log.money("Payment received [$50.00]")
log.debug("Internal state: ok")
log.captcha("Captcha detected on session_abc****")
log.custom("Special event", symbol="★", color=Colors.BRIGHT_YELLOW)
```

## Output

```
07:23 AM [¥] Application started
07:23 AM [+] Connected to server
07:23 AM [!] Rate limit approaching
07:23 AM [-] Connection failed
07:23 AM [$] Payment received [$50.00]
07:23 AM [~] Internal state: ok
07:23 AM [¥] Captcha detected on session_abc****
07:23 AM [★] Special event
```

## Title Bar

```python
log.print_title_bar(
    "MyApp v1.0",
    "@rowsvips",
    "vmshops.mysellauth.com",
    stats={"Success": 10, "Failed": 2}
)
```

```
────────────────────────────────────────────────────────────────────────────────
 MyApp v1.0 | @rowsvips | vmshops.mysellauth.com | Success: 10 - Failed: 2
────────────────────────────────────────────────────────────────────────────────
```

## Console Window Title

```python
log.set_title("MyApp v1.0", "@rowsvips")
log.set_title_stats(Success=10, Failed=2, Captcha=5)
```

## Counter System

```python
log.increment("success")
log.increment("failed", 3)

print(log.get_count("success"))
print(log.get_all_counts())

log.reset_counts()
```

## Contextual Helpers

```python
log.redeemed("code_abc****", "session_123****", "[AT: 2.5s | Type: Premium]")
log.failed("Process Task", "Error: session expired")
log.added("Account", "user_xyz****", "session_123****")
log.removed("Session", "session_old****")
log.thread_sleep(5, "Before retry")
```

## Custom Symbols & Colors

```python
log.custom("Diamond", symbol="♦", color=Colors.BRIGHT_MAGENTA)
log.custom("Heart", symbol="♥", color=Colors.BRIGHT_RED)
log.custom("Arrow", symbol="→", color=Colors.BRIGHT_CYAN)
```

## Inline Colored Text

```python
token = Logger.colorize("session_abc****", Colors.BRIGHT_CYAN)
log.info(f"Processing on {token}")

log.info(f"Status: {Logger.bold('ACTIVE')}")
```

## Utilities

```python
log.separator()
log.separator(char="=", length=40, color=Colors.CYAN)

log.blank()
log.clear()

log.banner("All Done!", color=Colors.BRIGHT_GREEN, width=50)
```

## Options

| Parameter | Default | Description |
|---|---|---|
| `title` | `"Application"` | Application title |
| `show_time` | `True` | Show timestamps |
| `time_format` | `"%I:%M %p"` | Time format (12h AM/PM) |
| `title_separator` | `" \| "` | Separator for title parts |
| `title_color` | `Colors.CYAN` | Title bar color |
| `time_color` | `Colors.BRIGHT_BLACK` | Timestamp color |
| `bracket_style` | `"square"` | Bracket style: square, round, angle, curly |
| `log_file` | `None` | Optional file path to save logs |

## Log File

```python
log = Logger(log_file="app.log")
log.info("This goes to terminal AND file")
```

## Log Levels

| Method | Symbol | Color |
|---|---|---|
| `info()` | `[¥]` | Cyan |
| `success()` | `[+]` | Green |
| `warning()` | `[!]` | Yellow |
| `error()` | `[-]` | Red |
| `money()` | `[$]` | Bright Green |
| `input_log()` | `[>]` | Magenta |
| `debug()` | `[~]` | Gray |
| `captcha()` | `[¥]` | Yellow |
| `custom()` | Custom | Custom |

## Default Instance

```python
from spanlogger import log

log.info("Quick access without creating an instance")
```

## License

MIT - by rowsvips | vmshops.mysellauth.com
