Terminal Kanban App written in Python
Project description
kanban-python
A Terminal Kanban Application written in Python to boost your productivity :rocket:
Introduction
Welcome to kanban-python, your Terminal Kanban-Board Manager.
The clikan Kanban App inspired me to write my own Terminal Kanban Application, since I preferred a more simple and guided workflow.
kanban-python also comes with more features and customization options. This package was developed with pyscaffold, which provides nice project templates and takes over much of the boilerplate for python packaging. It was a great help for developing my first package and I can highly recommend it.
Features
-
colorful and interactive: kanban-python uses rich under the hood to process user input and display nice looking tables to the terminal.
-
automated scanning of files for task creation: kanban-python can scan files of defined types for specific patterns at start of line. Check Automatic Task Creation for more Infos.
-
configfile: A
pykanban.ini
file gets created on first initialization in a.kanban-python
folder in yourHome
-Directory. This can be edited manually or within the kanban-python application. It tracks the location for all your created boards.
Active_Board
: current board that is shown when usingkanban
-commandDone_Limit
: If the amount of tasks exceed this number in the Done column, the first task of that column gets its status updated to Archived and is moved into that column. (default:10
)Column_Min_Width
: Sets the minimum width of columns. (default:40
)Show_Footer
: Shows the table footer with package name and version. (default:True
)Files
: Space seperated filetypes to search for patterns to create tasks. (default:.py .md
)Patterns
: Comma seperated patterns to search for start of line to create tasks.
(default:# TODO,#TODO,# BUG
)
-
storage-file for each board: Each created board comes with its own name and
pykanban.json
file, which stores all tasks for that board. The files are stored in board specific folders under.kanban-python/kanban_boards/<BOARDNAME>
-
column customization: kanban-python comes with 5 pre-defined colored columns: [Ready, Doing, Done, Archived, Deleted] More column can be added manually in the
pykanban.ini
, also the visibility can be configured. -
time-tracking: for each task it is tracked, how long it was in the Doing column, based on the moments when you update the task status. The initial Task structure on creation looks as follows:
Installation
You can install kanban-python with:
python -m pip install kanban-python
Usage
After Installation of kanban-python, there are 4 commands available:
Create new Boards
kanban init
Is used to create a new kanban board i.e. it asks for a name and then creates a pykanban.json
file with a Welcome Task.
On first use of any command, the pykanban.ini
configfile and the .kanban-python
folder will be created automatically.
Interact with Tasks/Boards
kanban
This is your main command to interact with your boards and tasks. It also gives the option to show the current settings and adjust them.
Adjusting the settings can also be done directly by using the command kanban configure
:
Use Ctrl-C
to exit the application at any time. :warning: If you exit in the middle of creating/updating a task,
or changing settings, your progress wont be saved.
Automatic Task Creation
kanban scan
After executing this command, kanban-python scans your current Directory recursively for the defined filetypes and searches for lines that start with the pattern provided.
After confirmation to add the found tasks to table they will be added to the board. The alphanumeric Part of the Pattern will be used as tag. The filepath were the task was found will be added as description of the task.
Change Settings
kanban configure
To create a new custom Columns, you have to edit the pykanban.ini
manually and add a new columnname + visibility status
under the settings.columns.visible
section. This will also be configurable within the application in the future.
Feedback and Issues
Feel free to reach out and share your feedback, or open an Issue, if something doesnt work as expected. Also check the Changelog for new updates.
Note
This project has been set up using PyScaffold 4.5. For details and usage information on PyScaffold see https://pyscaffold.org/.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for kanban_python-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0532942933b4f070de97c816d85036bf6c77da30d731e61b0ad19d8ff4487e3f |
|
MD5 | 6cfc458d2a8d859725b0ba1cefadbd69 |
|
BLAKE2b-256 | d367ff4112998d53c9ae0e6a3355b9c0861dc144aa82fe9b52c454eef3a74e61 |