Metadata-Version: 2.4
Name: hank
Version: 0.1.7
Summary: A fun little package inspired by a very good dog named Hank.
Author-email: Daron Prater <praterdaron513@gmail.com>
License: MIT
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.24
Requires-Dist: pandas>=2.0
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: bump2version; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: pandas-stubs; extra == "dev"

# 🐶 Hank

**Hank** is a playful and educational Python package inspired by a very good dog. It’s perfect for learning package structure, object-oriented programming, and integrating libraries like `pandas`, `numpy`, and `pytest`.

---

## 📦 Features

- Greet and interact with Hank
- Track Hank’s treats using a `pandas` DataFrame
- Analyze treat stats and timestamps
- Bark, fetch toys, and sleep
- Easily extendable for more fun behavior

---

## 🔧 Installation

From Pypi:
```bash
pip install hank
```

From Source:
```bash
git clone https://github.com/yourusername/hank.git
cd hank
python -m venv .venv
source .venv/bin/activate  # or .venv\Scripts\activate on Windows
pip install -e[dev].
```

---

## Running Tests

```bash
pytest
```

## Example Usage

```python
from hank import Hank

h = Hank(name="Hank", favorite_toy="stick")

print(h.greet())                   # "Hi! I'm Hank, a 3-year-old good boy who loves stick!"
print(h.bark())                    # "Woof! 🐾"
print(h.fetch("frisbee"))          # "Hank fetches the frisbee and brings it back to you!"

h.give_hank_treat("bacon", 2)      # Adds to treat log
print(h.get_treat_log())           # View treat log as a pandas DataFrame
```
## Contributing
Contributions are welcome! Here’s how to get started:

1. Fork the Repo
2. Set up a virtual environment and install dependencies:
```bash
pip install -e .[dev]
pre-commit install
```
3. Create a new branch off of Dev
```bash
git checkout dev
git pull origin dev
git checkout -b feature/my-feature
```

4. Make changes and run tests and linters
```bash
black . && flake8 . && mypy . && pytest
```

5. Commit and push your changes
```bash
git push origin feature/my-feature
```

6. Open a PR to merge into Dev

## Dependencies
- `pandas`
- `numpy`
- `pytest`
