Skip to content

docs: Project analysis and documentation overview#1

Draft
SarveshHase with Copilot wants to merge 1 commit into
mainfrom
copilot/add-project-structure-overview
Draft

docs: Project analysis and documentation overview#1
SarveshHase with Copilot wants to merge 1 commit into
mainfrom
copilot/add-project-structure-overview

Conversation

Copilot AI commented Nov 28, 2025

Copy link
Copy Markdown

Informational request to analyze the Taskman CLI project structure, features, and file purposes.

Summary

Taskman is a terminal-based task manager built in Python. Users can add, update, delete, list, and manage task statuses directly from the command line. Tasks persist to ~/tasks.json.

Project Structure

  • pyproject.toml — Package config (hatchling build, tabulate dependency, taskman CLI entry point)
  • src/taskman/cli.py — argparse-based CLI routing for subcommands
  • src/taskman/task.py — Core CRUD operations + JSON persistence
  • src/taskman/__main__.pypython -m taskman entry point

Commands

Command Description
add <desc> Create task (auto-ID, status=todo)
update <id> <desc> Update description
delete <id> Remove task
list [status] Display tasks (filterable: todo/in-progress/done/all)
mark-done <id> Set status=done
mark-in-progress <id> Set status=in-progress
clear [status] Bulk delete by status

Data Format

{
  "1": {
    "id": 1,
    "description": "Task text",
    "status": "todo",
    "createdAt": "2024-01-15 10:30:00",
    "updatedAt": "2024-01-15 10:30:00"
  }
}

No code changes — analysis only.

Original prompt

tell me about the project what it does and what are it's features in detail. And what each file does


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI changed the title [WIP] Add project overview documentation docs: Project analysis and documentation overview Nov 28, 2025
Copilot AI requested a review from SarveshHase November 28, 2025 08:31
@SarveshHase

Copy link
Copy Markdown
Owner

@copilot what is pipx?

Copilot AI commented Nov 28, 2025

Copy link
Copy Markdown
Author

@copilot what is pipx?

pipx is a tool for installing Python CLI applications in isolated virtual environments.

Why use pipx instead of pip?

  • Isolation: Each app gets its own virtual environment, preventing dependency conflicts between tools
  • Global access: Installed commands are available system-wide from any directory
  • Clean uninstalls: Removing an app cleanly removes all its dependencies

Example workflow:

# Install pipx
python3 -m pip install --user pipx

# Install taskman (isolated, globally accessible)
pipx install git+https://github.com/SarveshHase/task-cli.git

# Now 'taskman' command works from anywhere
taskman add "My first task"

Think of pipx as "Homebrew for Python apps" — it's the recommended way to install command-line tools like taskman, black, httpie, etc.

More info: https://pypa.github.io/pipx/

@SarveshHase

Copy link
Copy Markdown
Owner

@copilot how can I run this project locally, after cloning.

Copilot AI commented Nov 28, 2025

Copy link
Copy Markdown
Author

@copilot how can I run this project locally, after cloning.

After cloning the repository, you can run the project locally using these methods:

Option 1: Editable install (recommended for development)

cd task-cli
pip install -e .
taskman add "Test task"

Option 2: Run directly without installing

cd task-cli
python -m src.taskman add "Test task"

Option 3: Using a virtual environment (cleanest)

cd task-cli
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .
taskman list

The -e flag creates an "editable" install, meaning code changes take effect immediately without reinstalling. Tasks are stored in ~/tasks.json.

SarveshHase pushed a commit that referenced this pull request Nov 30, 2025
Refactored task creation and update timestamps to use a consistent da…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants