Metadata-Version: 2.4
Name: teamflow-console
Version: 0.2.4
Summary: TeamFlow Console App - Phase 1: In-Memory Task Distribution
Project-URL: Homepage, https://github.com/MrOwaisAbdullah/Teamflow
Project-URL: Documentation, https://github.com/MrOwaisAbdullah/Teamflow#readme
Project-URL: Repository, https://github.com/MrOwaisAbdullah/Teamflow
Project-URL: Bug Tracker, https://github.com/MrOwaisAbdullah/Teamflow/issues
Author-email: Owais Abdullah <contact@owaisabdullah.dev>
Maintainer-email: Owais Abdullah <contact@owaisabdullah.dev>
License: MIT
License-File: LICENSE
Keywords: cli,productivity,task-management,team,terminal
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
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.13
Classifier: Topic :: Office/Business :: Scheduling
Classifier: Topic :: Utilities
Requires-Python: >=3.13
Requires-Dist: pydantic>=2.5.0
Requires-Dist: rich>=13.7.0
Requires-Dist: typer>=0.12.0
Provides-Extra: dev
Requires-Dist: black>=23.12.0; extra == 'dev'
Requires-Dist: build>=0.10.0; extra == 'dev'
Requires-Dist: isort>=5.13.0; extra == 'dev'
Requires-Dist: mypy>=1.7.0; extra == 'dev'
Requires-Dist: pylint>=3.0.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
Requires-Dist: pytest-mock>=3.12.0; extra == 'dev'
Requires-Dist: pytest>=7.4.0; extra == 'dev'
Requires-Dist: twine>=4.0.0; extra == 'dev'
Description-Content-Type: text/markdown

# TeamFlow Console App

[![PyPI](https://img.shields.io/pypi/v/teamflow-console)](https://pypi.org/project/teamflow-console/)
[![Python](https://img.shields.io/pypi/pyversions/teamflow-console)](https://pypi.org/project/teamflow-console/)
[![License](https://img.shields.io/pypi/l/teamflow-console)](https://github.com/MrOwaisAbdullah/Teamflow/blob/main/LICENSE)

Interactive menu-driven console application for task distribution in small agencies.

## Installation

```bash
# Install from PyPI (latest version)
pip install teamflow-console

# Or install a specific version
pip install teamflow-console==0.2.3
```

**Requirements:** Python 3.13 or higher

## Quick Start

```bash
# Run the application
teamflow
```

That's it! The app will launch and show you the main menu.

## Features

- **Interactive Menu Navigation**: No command memorization required
- **Task Management**: Create, view, update, complete, and delete tasks
- **User & Team Management**: Create users with roles and skills, create teams
- **Task Assignment**: Assign tasks to team members with workload warnings
- **Task Filtering**: Filter by status, priority, and assignee
- **Keyboard Shortcuts**: Quick actions for power users (c=create, l=list, q=quit)
- **Visual Spacing**: Clean menu displays with proper line breaks

## First Run

1. Run `teamflow` in your terminal
2. You'll see a data loss warning (press Enter to continue)
3. Main menu appears with 5 options
4. Press `1` for Task Management
5. Press `1` to Create Task
6. Follow the prompts (title, description, priority, assignee)
7. Task created! Press `l` to list all tasks

## Menu Navigation

| Key | Action |
|-----|--------|
| `1-5` | Select menu option |
| `0` | Go back to main menu |
| `c` | Quick create task (from main menu) |
| `l` | Quick list tasks (from main menu) |
| `q` | Quit application |
| `Enter` | Confirm / Continue |

## Example Usage

```
$ teamflow

┌─────────────────────────────────────────────┐
│          TEAMFLOW - Task Manager           │
├─────────────────────────────────────────────┤
│  1. Task Management                         │
│  2. User & Team Management                  │
│  3. View Tasks                              │
│  4. View Resources                          │
│  5. Exit                                    │
├─────────────────────────────────────────────┤
│ c=Create, l=List, q=Quit                     │
└─────────────────────────────────────────────┘

Select option [1-5]: 1

[Task Management Menu appears...]

Select option [0-5]: 1

Enter task title: Fix login bug
Enter description (optional): [Enter to skip]
Select priority:
  1. High
  2. Medium
  3. Low
Select [1-3]: 1

┌─────────────────────────────────────────────┐
│ [SUCCESS] Task created!                      │
│                                             │
│ ID: 1                                        │
│ Title: Fix login bug                         │
│ Priority: High                               │
│ Status: Todo                                 │
│                                             │
│ Press Enter to continue...                    │
└─────────────────────────────────────────────┘
```

## Development

For development setup, see the [quickstart guide](specs/001-console-task-distribution/quickstart.md).

## Tech Stack

- Python 3.13+
- typer (CLI framework)
- rich (terminal UI)
- pydantic (data validation)
- pytest (testing)

## Project Structure

```
teamflow_console/
├── __init__.py   # Entry point
├── cli/          # CLI interface (menus, prompts)
├── lib/          # Utilities (formatting, storage, validation)
├── models/       # Pydantic data models
└── services/     # Business logic layer
tests/
├── unit/         # Model and service tests
├── integration/  # End-to-end workflow tests
└── contract/     # Interface contract tests
```

## License

MIT © 2025 Owais Abdullah

