Skip to content

Types and aeson instances for the taskwarrior json import/export specification

License

Notifications You must be signed in to change notification settings

ryantrinkle/haskell-taskwarrior

 
 

Repository files navigation

taskwarrior

Hackage Build Status Hackage Deps

About

Taskwarrior is a feature rich command-line task management tool.

This Haskell library contains

  • a data type to represent a taskwarrior task
  • Aeson instances to deserialize and serialize a task according to the taskwarrior import/export specifications
  • IO actions to load and manipulate tasks by calling the task command. (Since this is the encouraged way to library design by the taskwarrior developers.)

Usage

Install taskwarrior from hackage. Have a look at Taskwarrior.IO.getTasks to get started.

This example prints the description of (at the most) 5 pending tasks.

import Taskwarrior.IO (getTasks)
import Taskwarrior.Task as Task

main :: IO ()
main = do
  tasks <- getTasks ["+PENDING", "limit:5"]
  print $ Task.description <$> tasks

Contributions

Any form of issue reports, general feedback or suggestions and of course code contributions are highly welcome.

About

Types and aeson instances for the taskwarrior json import/export specification

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Haskell 98.2%
  • Nix 1.8%