go-todoist

module
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2025 License: MIT

README ยถ

๐Ÿ“ Golang ToDoist Client App with Bubble Tea UI ๐Ÿซง


๐Ÿšง This project is a work in progress. ๐Ÿšง

A delightful terminal-based Todoist client built with Go and the charming Bubble Tea framework.

โœจ Features

  • ๐Ÿ“‹ List tasks and manage them from your terminal
  • ๐Ÿ“… Browse tasks by date with day-to-day navigation
  • โž• Create new tasks with descriptions, due dates, and priority levels
  • โœ“ Mark tasks as complete or toggle completion status
  • ๐Ÿ”„ Refresh task list to sync with Todoist
  • ๐Ÿ“† Assign priority levels (P1-P4) to your tasks
  • ๐ŸŽจ Beautiful terminal UI with intuitive navigation
  • โŒจ๏ธ Fully keyboard-driven interface

๐Ÿš€ Installation

go install github.com/shivasurya/go-todoist/cmd/todoist@latest

๐ŸŽฎ Usage

  1. Launch the application:

todoist should be available in your $GOPATH/bin directory.

  1. Navigate using these keyboard shortcuts:
Task List Navigation
  • j/k or โ†‘/โ†“: Navigate up and down through tasks
  • h/l or โ†/โ†’: Navigate between previous/next day's tasks
  • t: Jump to today's tasks
  • space: Toggle task completion status
  • c: Mark task as complete
  • n: Create new task
  • r: Refresh tasks list from Todoist
  • Enter: Select currently highlighted task
  • ?: Toggle help menu
  • q or Ctrl+C: Quit application
Task Creation
  • Tab/Shift+Tab: Navigate between task fields (Title, Description, Due Date, Priority)
  • Any key: Cycle through priority levels when the priority field is selected:
    • P1: Normal priority (default)
    • P2: Medium priority
    • P3: High priority
    • P4: Urgent priority
  • Enter: Submit and create the task
  • Esc: Cancel and return to task list

๐Ÿ› ๏ธ Development

Requirements:

  • Go 1.19 or higher
  • Todoist API key

Build from source:

# Clone the repository
git clone https://github.com/shivasurya/go-todoist

# Navigate to the project directory
cd go-todoist

# Set your Todoist API token
export TODOIST_TOKEN=your_api_key

# Build the application
go build -o todoist cmd/todoist/main.go

# Run it
./todoist

Ensure you have a valid Todoist API key in your environment variable as TODOIST_TOKEN.

๐Ÿ“„ License

MIT License - feel free to use and modify!

๐Ÿ™ Acknowledgments

Directories ยถ

Path Synopsis
cmd
todoist command
internal
app
ui
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL