- Notifications
You must be signed in to change notification settings - Fork0
A terminal-based daily task management tool with minimal overhead
License
Gusabary/Arenta
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A terminal-based daily task management tool with minimal overhead.
- Complete CRUD support of daily tasks with intuitive syntax
- Visualized task schedule with colorful timeline
- A single executable binary and naturally terminal based
- Retentiveness by storing tasks in local file
Several alternatives:
- Recommended:
cargo install arenta
cargo install --git https://github.com/Gusabary/Arenta.git
- Download binary fromRelease page and put it into
$PATH
- Clone the repo and build from source
Usearenta -h
to show help messages andarenta -v
to check the version.
Usearenta
to start an interactive session, in which you could manage daily tasks easily.
Task is the core concept in Arenta, which consists of description, planned start/complete time, actual start/complete time and status.
The description and time part could be set and edited with Arenta commands, while the status is managed by Arenta in such rules:
planned start | planned complete | actual start | actual complete | |
---|---|---|---|---|
Backlog | unset | unset | unset | unset |
Planned | set and later than now | set | unset | unset |
Overdue | set and earlier than now | set | unset | unset |
Ongoing | set / unset | set / unset | set | unset |
Complete | set / unset | set / unset | set | set |
The interactive session accepts valid Arenta commands:
Type in
n
ornew
to create a new task in an interactive way:arenta> n description: a new task how to arrange this task> start immediately put in backlog plan to...
Type in
s
orstart
plus a task index to start it:arenta> s 0task 0 started
Type in
c
orcomplete
plus a task index to complete it:arenta> c 0task 0 completed
Type in
ls
orll
with[date_filter]
and[flags]
to list all tasks in specified date range.ll
will render a visualized timeline as well, in which the planned period is represented as-
while actual period is=
[date_filter]
is in format of<op><date>
<op>
could be<
,<=
,>
,>=
or empty, which indicates==
. Note that forll
,<op>
must be empty.<date>
could take format ofmm-dd
,yyyy-mm-dd
or just an integer, which indicates offset to today.
[flags]
could containb
orv
b
flag to display backlog tasks as wellv
flag to display in verbose mode
# list today's tasks> ls# list tomorrow's tasks with timeline> ll +1# list all historical tasks in verbose mode> ls <0 v# list yesterday's tasks including backlog and timeline in verbose mode> ll -1 bv
Type in
h
orhelp
to show the complete usage of all Arenta commands
- [usability] make the Arenta interactive session more shell-like, e.g. can use up arrow key to pop up last command
- [scalability] take a more scalable approach to save all tasks to local file
- [customizability] expose some settings as configurable, e.g. length of timeline, color of status, task display pattern, etc.
About
A terminal-based daily task management tool with minimal overhead