Gravitask - Task

A PHP library for parsing and working with todo list items/tasks.

Developer
Built with PHP

gravitask/task

I built this library after discovering the todo.txt syntax and accompanying apps.

(A) Write the README file @github

I liked the simplicity of the task syntax, and how easy it made moving the data between different apps.

However, through all of the apps I tried, it seemed like each one had some kind of limitation. The web UIs available either hadn't been updated in more than 2 years or were read-only pages.

I thought I could fill this gap by building an open, extensible API/web app.

The Library

$input = "(A) Write the README file @github";

$parser = new Gravitask\Task\Parser\TodoTxtParser();
$task = $parser->parse($input);

$task->getPriority(); // Result: "A"
$task->getTask(); // Result: "Write the README file"
$task->getContexts(); // Result: ["github"]

The tasks library was built as a separate component from the rest of the application to allow other developers to easily implement and work with similar systems.

The motivation for this project was to keep the freedom to move your data between other applications, so it made sense to allow other developers easy and direct access to the core task parsing logic.

You can view the package on Packagist or on GitHub.