A simple yet powerful Terminal User Interface (TUI) and Command-Line Interface (CLI) note-taking app written in Rust. Manage your tasks with ease, featuring tags, due dates, priorities, and more. Fully customizable via Lua configuration!
- TUI and CLI Support: Use it interactively in the terminal or via commands.
- Vim-like Navigation:
j
/k
: Move down/up.h
/l
: Switch between Active and Archived tabs.
- Task Management:
a
: Add a new task.d
: Delete a task.D
: Mark a task as done.r
: Archive completed tasks.
- Undo Functionality: Accidentally deleted a task? Don’t worry, undo is here!
- Customizable UI:
- Configure colors, keybindings, and behavior using a Lua config file.
- Open Source: MIT Licensed. Feel free to contribute or build your own features!
- Future Plans:
- Google Drive sync.
- More integrations (e.g., CalDAV, Todo.txt).
- Rust (install via rustup)
- Clone the repository:
git clone https://github.com/zpeteman/todo_sage.git cd todo_sage
- Build the project:
cargo build --release
- run the app:
./target/release/todoSage
Launch the app without arguments to enter TUI mode:
notesage
use the app from command line.
noteSage add "Buy groceries" --tags "shopping" --due "2024-12-31" --priority high
noteSage list
noteSage delete --id 1
there is more functions use help to see all of them.
Customize the app using a Lua config file (~/.config/noteSage/config.lua). Here’s an example:
return {
ui = {
colors = {
primary = "#3498db", -- Blue
warning = "#f39c12", -- Orange
error = "#e74c3c", -- Red
background = "#34495e" -- Dark blue
}
},
keybindings = {
quit = "q",
new_task = "a",
mark_done = "D",
delete_task = "d",
archive_tasks = "r",
navigate_up = "k",
navigate_down = "j",
switch_tab_left = "h",
switch_tab_right = "l"
}
}
This project is open source, and contributions are welcome! If you have an idea for a new feature or find a bug, please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
If you encounter any issues or have questions, please open an issue on GitHub. You can also reach out to me on X (formerly Twitter) @the_zanan.
- Built with Ratatui for the TUI.
- Inspired by task management tools like Taskwarrior and Todo.txt.