Thanks to visit codestin.com
Credit goes to github.com

Skip to content

codad5/google-task-desktop

Google Task Desktop

An unofficial, lightweight desktop client for Google Tasks

Built with Tauri | React | TypeScript | Rust

Version License Tauri

Screenshot


✨ Features

Core Functionality

  • πŸ“‹ Full Google Tasks Integration - Sync with your Google account
  • βœ… Create, Edit, Delete Tasks - Full CRUD operations
  • πŸ“ Multiple Task Lists - Organize tasks in separate lists
  • ⭐ Star Important Tasks - Quick access to starred tasks view
  • πŸ“… Due Dates - Set due dates with Today/Tomorrow shortcuts
  • πŸ”” Desktop Notifications - Configurable reminder time on due dates

Advanced Features

  • ✏️ Inline Editing - Click any task to edit in place
  • πŸ”ƒ Drag-and-Drop - Reorder tasks within lists
  • πŸ“Ž Subtasks - Create and manage subtasks
  • πŸ‘οΈ Collapsible Sidebar - Show/hide lists with visibility toggles
  • πŸ”„ Multi-Account - Switch between Google accounts
  • 🎨 Modern UI - Clean Material Design interface

πŸ› οΈ Tech Stack

Layer Technology
Frontend React 18, TypeScript, Material-UI
Backend Rust, Tauri 1.4
State Recoil (minimal, UI-only)
Architecture Layered (Repository β†’ Service β†’ Hooks β†’ Components)

πŸ“₯ Installation

From Releases

Download the latest release for your platform from the Releases page.

From Source

Prerequisites

Steps

# Clone the repository
git clone https://github.com/codad5/google-task-desktop.git
cd google-task-desktop

# Install dependencies
npm install

# Start development server
npm run launch:dev

# Build for production
npm run tauri build

βš™οΈ Configuration

Google OAuth Setup

  1. Go to Google Cloud Console
  2. Create a new project
  3. Enable Google Tasks API
  4. Create OAuth 2.0 Client ID (Desktop application)
  5. Create a .env file:
VITE_GOOGLE_CLIENT_ID=your_client_id
VITE_GOOGLE_CLIENT_SECRET=your_client_secret

πŸ“– Documentation

⚠️ Known Limitations

Limitation Reason
No due times Google Tasks API only supports dates, not times
No offline mode Planned for future release

Note: Notifications are triggered at your configured time on the due date (default: 9 AM). Change it in Settings.

πŸ—ΊοΈ Roadmap

  • Core task management
  • Inline editing
  • Drag-and-drop reordering
  • Starred tasks
  • Desktop notifications
  • Global keyboard shortcuts
  • Offline support with sync
  • Dark mode
  • Theme toggle (light/dark)
  • Recurring tasks

πŸ‘¨β€πŸ’» Author

Aniezeofor Chibueze Michael (Codad5)

🀝 Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.

πŸ™ Acknowledgments


If you find this project helpful, please consider giving it a ⭐!

Report Bug Β· Request Feature