Skip to main content

Cursedtodo is a TUI todo manager written in Python using (n)curses library

Project description

CursedTodo

CursedTodo is a lightweight and straightforward todo manager for the terminal. Using .ics files for storage, it can be used with vdirsync for CalDAV synchronization. Efforts are made to support most of RFC-5545 and to be compatible with most other projects.

CursedTodo is developed in Python using the Curses library and has only ics as a dependency.

Demo

demo of cursedtodo

Roadmap

  • Basic todo list (ordered by priority, show/hide completed)
  • Todo creation, modification, and deletion
  • Keymaps customization
  • Category filtering
  • Subtasks and linked todos
  • Search
  • Basic CLI for adding todos

Will not be implemented

  • Mouse support

Usage

Cursedtodo need a config.toml files in $XDG_CONFIG_HOME/cursedtodo/ Keybinds are based on Vim hjkl for movement.

Here is an example config.toml:

# Calendars configuration
[[calendars]]
name = "Personal"
path = "~/.local/share/vdirsyncer/calendar/personal"
# available colors : black, red, green, yellow, blue, magenta, cyan, white
color = "blue"
default = true

[[calendars]]
name= "Work"
path = "~/.local/share/vdirsyncer/calendar/work"
color = "green"
default = false

# UI configuration
[ui]
window_name = "Todos"
show_footer_keybindings = true
select_first = true
rounded_borders = true
date_format = "%m/%d/%y %H:%M:%S"
category_colors = true
confirm_mark_as_done = true

# Columns configuration
[[columns]]
property = "calendar.name"
width = 10

[[columns]]
property = "summary"
width = 30

[[columns]]
property = "priority"
width = 15

[[columns]]
property = "due"
width = 30

[[columns]]
property = "categories"
width = 30

[!IMPORTANT]
Cursedtodo is still in early development, expect some bugs and possibly breaking changes to the config file. Please backup your data regularly.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Alternatives

Projects with similar goals:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cursedtodo-0.0.1rc10.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cursedtodo-0.0.1rc10-py3-none-any.whl (30.3 kB view details)

Uploaded Python 3

File details

Details for the file cursedtodo-0.0.1rc10.tar.gz.

File metadata

  • Download URL: cursedtodo-0.0.1rc10.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.22.3 CPython/3.13.1 Linux/6.8.0-1020-azure

File hashes

Hashes for cursedtodo-0.0.1rc10.tar.gz
Algorithm Hash digest
SHA256 7ec03873edd0453e364bc62b638031570122e8ecec0c36a5aaf3d597ec492842
MD5 69de76e3bd5719c9dac59def6136ba65
BLAKE2b-256 c5f5a4a979f9609f4f5e5c2883a38ee5c7b198cd2611d6f11725c75aac027d56

See more details on using hashes here.

File details

Details for the file cursedtodo-0.0.1rc10-py3-none-any.whl.

File metadata

  • Download URL: cursedtodo-0.0.1rc10-py3-none-any.whl
  • Upload date:
  • Size: 30.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.22.3 CPython/3.13.1 Linux/6.8.0-1020-azure

File hashes

Hashes for cursedtodo-0.0.1rc10-py3-none-any.whl
Algorithm Hash digest
SHA256 3cbfe79b9973b77cb057e17cdd27784b3fc704fdd1002f3dea05032fd5602c00
MD5 2c7c815b23a04e867ef59f75c7bee04f
BLAKE2b-256 77df58dab8d717d6dad067856c0a639f7fe84790ba423a3550c6f8676d43ab21

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page