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.1rc11.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.1rc11-py3-none-any.whl (30.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cursedtodo-0.0.1rc11.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.1rc11.tar.gz
Algorithm Hash digest
SHA256 25fa763294e21c22a5aa0427ad62fb082ba9e3299d19c557cc6d573e3b1b1aee
MD5 5d8600d32565277ca9cfe8e3c2a0fc43
BLAKE2b-256 a6dfcc6b68b35ad848bd3e32620420a53f06604fe3cd14c9d3419bd525be0e61

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cursedtodo-0.0.1rc11-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.1rc11-py3-none-any.whl
Algorithm Hash digest
SHA256 78850e9184a10f5f4f85dc56c0f80762f146ee5049eaecadfd15546c9f66a990
MD5 c67b2c9e65ec2a21ea49333b7df21fa9
BLAKE2b-256 7f08509141508e70b3359c012beb969925d795e2e4178d8661af6c22c6023057

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