https://github.com/cococry/todo
Simple, suckless GUI task management utility written in C with libleif
https://github.com/cococry/todo
Last synced: 8 months ago
JSON representation
Simple, suckless GUI task management utility written in C with libleif
- Host: GitHub
- URL: https://github.com/cococry/todo
- Owner: cococry
- License: apache-2.0
- Created: 2024-05-20T19:12:50.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-28T11:50:13.000Z (almost 2 years ago)
- Last Synced: 2025-04-03T06:07:06.104Z (about 1 year ago)
- Language: C
- Homepage:
- Size: 1.68 MB
- Stars: 140
- Watchers: 2
- Forks: 20
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# todo

## Overview
*todo* is a GUI task management utility that does one job, which is managing & storing your tasks. The app is written completly in C in under 1000 lines of code.
It supports serialization & deserialization of tasks. Furthmore, the app implements a priority system for your tasks and the displayed tasks are sorted from high to low priority.
There is also a filtering system that filters tasks after different critia (eg. completed, high priority,in progress).
The application is designed with configuration in mind and editing the config.h file will let you configure everything very easily. The source code is also very extensible and it is easy to add or change features if you have some knowledge of C.
## UI
The UI of the applicaton is written entirely with the [leif](https://github.com/cococry/leif) UI library which is a small immediate mode UI framework that i've written. The rendering is done with modern OpenGL by utilising a batch rendering system under the hood. As *todo* using any big UI framework like QT or GTK, it can be considered as very [suckless](https://suckless.org/philosophy).
## Terminal Interface
todo can also be used in the terminal without any gui if you prefer that. There are subcommands for every action that can
be done in the UI. For more information:
```console
todo --help
```
## Quick Start
On Linux:
```console
git clone https://github.com/cococry/todo
cd todo
./setup.sh
```
On Windows:
You would need to manually create a build script for leif and
build a static library and then link that library with the todo app and compile the app.
That would be a bit of a challange, but possible :)