Skip to content

Improve TaskWarrior-flutter App Sync Setup with CCSync #465

Open
@Ni1esh-Yadav

Description

@Ni1esh-Yadav

Describe your improvement idea or feature request

Currently, linking the TaskWarrior mobile app with CCSync requires users to manually enter the following details:

  • UUID (Unique Identifier)
  • Encryption Secret
  • CCSync Backend URL

This process is inconvenient and prone to user errors. To improve the user experience, we should implement an automated setup process that fetches these details from CCSync.

How would you like to see it implemented?

Proposed Enhancements

1. QR Code-Based Auto Configuration

  • After signing in on the CCSync Web UI, generate a QR code containing the user's sync credentials.
  • The TaskWarrior mobile app can scan this QR code to automatically configure the sync settings.

Example QR Code Data (JSON):

{
  "uuid": "123e4567-e89b-12d3-a456-426614174000",
  "encryption_secret": "s3cr3tKeyBase64",
  "sync_server_url": "https://ccsync.example.com"
}

2.Deep Linking for One-Click Setup

Provide a deep link in the CCSync Web UI:
taskwarrior://configure?uuid=123e4567&secret=s3cr3tKey&server=https://ccsync.example.com

  • When opened on a mobile device, the TaskWarrior app should extract the sync details and apply them automatically.

3. API-Based Configuration Fetching (Optional Alternative)

  • Allow users to generate a one-time-use token on the Web UI.
  • The mobile app can use this token to fetch sync settings from CCSync.

Benefits

✅ Eliminates manual entry errors
✅ Improves user experience
✅ Allows for seamless multi-device sync

Possible Challenges & Solutions

  • Security Concerns: Ensure QR codes and deep links are short-lived and expire after use.
  • Backward Compatibility: Maintain manual entry as a fallback option.

Expected Outcome

A simplified, user-friendly method for linking the TaskWarrior-flutter app with CCSync, reducing setup complexity and improving usability.

Put here any screenshots or videos (optional)

No response

How can we contact you (optional)

No response

Would you like to work on this issue?

Yes

By submitting this issue, I have confirmed that:

  • I have starred the repo ⭐ and watched 👀 it on GitHub and followed the contribution guidelines.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions