ToDo List Manager
A simple command-line utility for managing a ToDo list, using SQLite for storage.
This tool offers a dynamic and collaborative approach to task management. Designed to operate in a team-based environment, it allows for the integration of a hidden file, named todos.db, into a shared repository. This integration is a key feature that enables multiple users to access and update their to-do lists. By adding todos.db to the repository, team members can seamlessly share and synchronize their tasks with each other. This shared access ensures that everyone in the team is on the same page, as they can view, add, modify, and remove tasks using this same command-line tool. This functionality is particularly beneficial in collaborative projects where consistent communication and coordination of tasks are crucial. Furthermore, the use of a command-line interface for this tool makes it versatile and suitable for various environments, including software development, project management, and any other team-oriented workspace where task tracking is essential.
Features
- Initialize a new ToDo list database
- Add ToDo items with details
- Show ToDo items
- Update Status of ToDo Item
- Remove ToDo items and add them to history
- Show history of completed ToDo items
Fields
todo: The name of the ToDo item.weekday: The day of the week for the ToDo item.description: A description of the ToDo item.importance: The importance level of the ToDo item.comments: A comment left after completing a ToDo.status: The state the current ToDo is in. It is eitherPending ...,In ProgressorFinished.action: An action that has been taken.
Usage
-
Initialize the database: Run the script with
todo initto a create the database for the current Directory. Therefore each Directory can have their own ToDo-Manager.todo init -
Add a ToDo item: Use
todo add <todo_name> <weekday>to add a new item.todo add some_todo sundayThe next prompts give you the opportunity to further describe your todo
Description: some descriptionImportance: high -
Show ToDo items: Use
todo showto display all items ortodo show [criteria]for specific items. You can search for thename,id,dayandimportance.todo showor
todo show some_todo_nameor
todo show 1or
todo show sundayor
todo show highOutput looks something like this:
+------+---------------------------------+-----------+--------------+------------------------------------------+-------------+ | ID | ToDo | Weekday | Importance | Description | Status | +======+=================================+===========+==============+==========================================+=============+ | 1 | collaborations | sunday | high | Implementing collaboration functionality | Pending ... | +------+---------------------------------+-----------+--------------+------------------------------------------+-------------+ | 2 | uploading first version to pypi | friday | high | Uploading current version to pypi | Pending ... | +------+---------------------------------+-----------+--------------+------------------------------------------+-------------+ -
Remove a ToDo item: Use
todo remove <id_or_name>to remove an item and add it to the history.todo remove 1or
todo remove some_todo_name -
Updating Status of ToDo: Use
todo update <id_or_name>to update the status of a ToDo frompendingtoin progress.todo update 1or
todo update some_todo -
Show History of completed ToDos: Use
todo historyto display all items ortodo history [criteria]for specific items. You can search for theid,nameandimportance.todo historyor
todo history some_todoor
todo history 1or
todo history highOutput looks something like this:
+------+----------------+------------------+--------------+------------------------------------------+-----------------------------------------------------+----------+ | ID | ToDo | Finished | Importance | Description | Comment | Status | +======+================+==================+==============+==========================================+=====================================================+==========+ | 1 | collaborations | 29 December 2023 | high | Implementing collaboration functionality | I should implement this feature in the next version | Finished | +------+----------------+------------------+--------------+------------------------------------------+-----------------------------------------------------+----------+ -
Show Logs, which includes all actions: Use
todo logsto display all actions, that has been taken so far.todo logsOutput looks something like this:
+------+---------------------------------+------------------+-----------------+-------------+ | ID | ToDo | Time | Action | Status | +======+=================================+==================+=================+=============+ | 1 | collaborations | 28 December 2023 | Adding ToDo | Pending ... | +------+---------------------------------+------------------+-----------------+-------------+ | 2 | uploading first version to pypi | 29 December 2023 | Adding ToDo | Pending ... | +------+---------------------------------+------------------+-----------------+-------------+ | 3 | uploading first version to pypi | 29 December 2023 | Updating Status | In Progress | +------+---------------------------------+------------------+-----------------+-------------+ | 4 | collaborations | 29 December 2023 | Removing ToDo | Finished | +------+---------------------------------+------------------+-----------------+-------------+
Limitations
- The script expects command-line arguments for certain operations.
- Database initialization must be performed before any other operations.
- Error handling is primarily done through
sys.exitwith error messages.
Metadata
Release files for cli-todo-manager 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cli_todo_manager-0.1.1.tar.gz | 5.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cli_todo_manager-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.5 kB
Release files / cli_todo_manager-0.1.1.tar.gz
| Download URL | cli_todo_manager-0.1.1.tar.gz |
|---|---|
| Size | 5.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f800caa20180e6942139bbd1e6ee87882ef82163f7f1fa6c44c120db72d53895
|
|
BLAKE2b-256 checksum How to use checksums |
6400bfd6f8413a8e065ef993bdd9201428346982e0e70d7c6a17e3c71a325557
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.6
|
Release files / cli_todo_manager-0.1.1-py3-none-any.whl
| Download URL | cli_todo_manager-0.1.1-py3-none-any.whl |
|---|---|
| Size | 6.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e9f7c3f0acf09908d0bb31e9968d9d1da80bdb05751a74afb06a168304451d84
|
|
BLAKE2b-256 checksum How to use checksums |
3780f038c950b5b1cbbafb72ffa9d0b4e7a08b51f09e9d81b04e46cbaaea6d6a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.6
|