Metadata-Version: 2.5
Name: cards
Version: 2.0.3
Summary: Project task tracking / todo list - A Teaching Project
Author: Brian Okken
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Classifier: License :: OSI Approved :: MIT License
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: Programming Language :: Python :: 3.15
License-File: LICENSE
Requires-Dist: tinydb==4.8.2
Requires-Dist: typer==0.17.4
Requires-Dist: rich==14.1.0
Requires-Dist: pytest ; extra == "test"
Requires-Dist: tox ; extra == "test"
Requires-Dist: tox-uv ; extra == "test"
Requires-Dist: coverage ; extra == "test"
Requires-Dist: pytest-cov ; extra == "test"
Project-URL: Home, https://github.com/okken/cards
Provides-Extra: test
Import-Name: cards

cards
=====

Project task tracking / todo list

A Teaching Project
----------------------------

This project is used for teaching the concepts of software testing.
Specifically, testing with the pytest test framework.

The project appears in:
- [The Complete pytest Course](https://courses.pythontest.com/)
  - uses cards version 2.0.0
- [Python Testing with pytest, 2nd edition](https://pythontest.com/pytest-book/)
  - uses cards version 1.0.1 - approximately

Can be used as a simple todo list
---------------------------------

Even though the primary goal of the project is for teaching about software testing, I also use it as a simple command line task tracker for myself and my team.

Usage
-----

Here's a demo of how it works:

    $ cards add a todo
    $ cards add -o Brian another task
    $ cards list

    ID   state   owner   summary
    ───────────────────────────────────
    1    todo            a todo
    2    todo    Brian   another task

    $ cards update 1 -o Brian
 .  $ cards
                                     
    ID   state   owner   summary       
    ─────────────────────────────────── 
      1    todo    Brian   a todo        
      2    todo    Brian   another task  
                                      
    $ cards start 1
    $ cards
                                       
      ID   state     owner   summary       
     ───────────────────────────────────── 
      1    in prog   Brian   a todo        
      2    todo      Brian   another task 

    $ cards finish 1
    $ cards

      ID   state   owner   summary
     ───────────────────────────────────
      1    done    Brian   a todo
      2    todo    Brian   another task


    $ cards delete 1
    $ cards

      ID   state   owner   summary
     ───────────────────────────────────
      2    todo    Brian   another task

    $ cards --help

     Usage: cards [OPTIONS] COMMAND [ARGS]...

     Cards is a small command line task tracking application.

    ╭─ Options ────────────────────────────────────────────────────────╮
    │ --help          Show this message and exit.                      │
    ╰──────────────────────────────────────────────────────────────────╯
    ╭─ Commands ───────────────────────────────────────────────────────╮
    │ add       Add a card to db.                                      │
    │ config    List the path to the Cards db.                         │
    │ count     Return number of cards in db.                          │
    │ delete    Remove card in db with given id.                       │
    │ finish    Set a card state to 'done'.                            │
    │ list      List cards in db.                                      │
    │ start     Set a card state to 'in prog'.                         │
    │ update    Modify a card in db with given id with new info.       │
    │ version   Return version of cards application                    │
    ╰──────────────────────────────────────────────────────────────────╯

