Metadata-Version: 2.1
Name: terminal-stopwatch
Version: 1.1.2
Summary: A terminal-based stopwatch application featuring ASCII art display
Home-page: https://www.taejun.lol
Keywords: stopwatch,terminal,ascii-art,timer
Author: taejun
Author-email: dugudugu0622@gmail.com
Requires-Python: >=3.11,<3.14
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Utilities
Requires-Dist: colorama (>=0.4.6,<0.5.0)
Requires-Dist: keyboard (>=0.13.5,<0.14.0)
Requires-Dist: pyfiglet (>=1.0.2,<2.0.0)
Requires-Dist: pyinstaller (>=6.12.0,<7.0.0)
Requires-Dist: readchar (>=4.2.1,<5.0.0)
Project-URL: Repository, https://github.com/taejun0622/stopwatch
Description-Content-Type: text/markdown

# Terminal Stopwatch

A terminal-based stopwatch application featuring ASCII art time display and lap time functionality.

![Stopwatch Demo](stopwatch_final3.gif)

## Features

- Large number display using ASCII art
- Lap time recording
- Simple keyboard shortcuts
- HH:MM:SS format for times over an hour
- MM:SS format for times under an hour
- Clean and intuitive terminal interface

## Installation

Using Poetry:
```bash
poetry add terminal-stopwatch
```

Using Pip:
```bash
pip install terminal-stopwatch
```

## Usage

### As a Package
```python
from terminal_stopwatch.main import main

main()
```

### From Command Line
```bash
# With Poetry
poetry run python -m terminal_stopwatch

# With Python
python -m terminal_stopwatch
```

## Controls

- `s` - Start/Pause
- `l` - Record Lap Time
- `r` - Reset
- `q` - Quit
- `Ctrl+C` - Force Quit

## Project Structure

```
terminal_stopwatch/
├── __init__.py        # Package initialization
├── constants.py       # Constants definition
├── models.py          # Data models (TimeDisplay)
├── terminal.py        # Terminal control
├── input_handler.py   # Input handling
├── stopwatch.py       # Stopwatch logic
└── main.py           # Main execution
```

## Development Setup

1. Clone the repository:
```bash
git clone https://github.com/taejun0622/stopwatch.git
cd stopwatch
```

2. Set up Poetry environment:
```bash
poetry install
```

3. Run in development mode:
```bash
poetry run python run.py
```

## Dependencies

- Python 3.11+
- colorama - Terminal color support
- pyfiglet - ASCII art generation

## License

MIT License

## Contributing

1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## Author

- taejun (dugudugu0622@gmail.com)
- GitHub: [@taejun](https://github.com/taejun)

## Changelog

### [1.0.0] - 2024-02-20
- Initial Release
- Basic stopwatch functionality with ASCII art display
- Lap time recording feature
- Published to PyPI

