GSoC 2026

TaskWarrior

TaskWarrior Mobile App - Enhancing the User Experience with CCSync

Mentor

Mabud Alam

Time Estimation

175 hours

Project Overview

TaskWarrior is a powerful command-line task management tool that helps users manage their tasks efficiently through a terminal interface. It offers task synchronization, advanced filtering, and script-based integration via CLI.

However, despite its power, TaskWarrior lacks a modern cross-platform graphical user interface (GUI) that can match its CLI capabilities. To bridge this gap, we built a Flutter-based mobile app for TaskWarrior that allows users to:

โœ… What We Achieved Last Year (2025)

Last year, we made significant progress by:

  • ๐Ÿš€ Migrating most of the codebase to GetXfor better state management. - ๐Ÿ’พ Enabling sync with TaskServer 2.0 (TS 2.0). - ๐Ÿ“ฑ Improving the mobile app's usability and performance.
  • Unit tests

However, a few key challenges still remain:

  • Some parts of the app still use the old provider-based state management, so we want to complete the migration toGetX. - We haven't fully integrated CCSync/TaskServer 3.0(which we built separately), and our app only supports TaskServer 2.0. - We lack automated build releases (to F-Droid) and automated testing workflows. - There's no iOS home widgetfor quick task access. - Desktop optimization is still missing despite Flutter's growing desktop support.

โœ… Your Task for This Year (2026)

This year, we aim to finalize the TaskWarrior app by:

Completing the migration to GetX.**Extending sync support for CCSync (TaskServer 3.0)**without breaking existing TaskServer 2.0 support.Automating nightly builds via F-Droid and GitHub Actions.Building an iOS home screen widgetfor quick task access.Optimizing the app for desktop usage (macOS).Ensuring complete test coverage(unit, integration, end-to-end).Simplifying codebase architectureand reducing unnecessary bloat.Maintaining the core TaskWarrior philosophyโ€” minimal, fast, and powerful.

Key Deliverables

โœ… 1. Complete Migration to GetX (High Priority)

  • A large portion of the app has already been migrated to GetX, but some modules still useheavy setStatefor state management. - Your task will be to:

  • ๐Ÿš€ Move the remaining sections to GetX. - ๐Ÿ’ก Ensure state management is clean, reusable, and optimized.

  • โœ… Remove redundant code and reduce app bloat.

  • ๐Ÿš€ Move the remaining sections to

  • This will future-proof the app and improve scalability.

โœ… 2. Integrate CCSync (TaskServer 3.0) Without Breaking TaskServer 2.0

Current State:The app supports sync only withTaskServer 2.0.Goal:Extend support forCCSync/TaskServer 3.0without breaking existing TaskWarrior 2.0 functionality.Tasks:- ๐Ÿ”„ Create separate data modelsfor TaskServer 2.0 and TaskServer 3.0. - ๐Ÿ’ก Implement an UI to allow user which taskserver they want to use for different profiles.

  • ๐Ÿ“ก Provide seamless sync functionality for both versions.

  • ๐Ÿ’ฌ Collaborate with CCSync developersto ensure full compatibility.

  • ๐Ÿ”„

๐Ÿ’ก Note: Some groundwork has already been done to integrate CCSync, so your job will be to improve, optimize, and finalize the integration.

โœ… 3. Build Full Test Coverage (Must-Have)

  • The app currently lacks complete test coverage. Your task will be to:

  • ๐Ÿš€ Write unit testsfor all major functionalities. - ๐Ÿงช Implement integration teststo ensure seamless task sync. - โœ… Enable end-to-end testingusing Flutter integration tests. - ๐Ÿ“Š Achieve at least 90% test coverageacross the codebase.

  • ๐Ÿš€ Write

This will ensure production-level stability and prevent future bugs.

โœ… 4. Automate Nightly Builds (to F-Droid + GitHub Actions)

  • One major issue is that our app doesn't have automated builds.

  • Your task will be to:

  • ๐Ÿค– Setup F-Droidfor nightly builds. - ๐Ÿ”„ Create GitHub Actions CI/CD workflowsthat automatically:- Build APK and AAB packages.

  • Push releases to F-Droid. - Notify on failures via GitHub Actions.

  • ๐Ÿค– Setup

  • This will drastically simplify app distribution for users.

โœ… 5. Develop an iOS Home Widget for Quick Task Access

  • Create an iOS home screen widget that allows users to:

  • โœ… View pending tasks.

  • โœ… Mark tasks as completed.

  • โœ… Add new tasks quickly.

  • This will significantly improve user retention for iOS users.

  • Android widget is already done : https://github.com/CCExtractor/taskwarrior-flutter/pull/417

โœ… 6. Optimize Desktop Support (macOS/Linux)

  • Since Flutter now supports desktop, we want to optimize TaskWarrior to:- โœ… Run smoothly on macOS/Linux/Windows desktops. - โœ… Provide a desktop-friendly UI/UX.

  • โœ… Sync tasks seamlessly across desktop and mobile.

  • โœ… Run smoothly on

  • This will position TaskWarrioras a powerful multi-platform task manager.

โœ… 7. Ensure No Feature Regression

  • One of our biggest concerns is breaking existing functionality. - Your task is to ensure that:
  • โœ… TaskServer 2.0 sync continues to work as-is.
  • โœ… TaskServer 3.0 integration works without conflict.
  • โœ… The app does not introduce unnecessary bloat or complexity.

โœ… 8. iOS App

  • Release the first version of the Flutter app in AppStore
  • Test all the features and make sure all works.

โœ… 9. Propose Minimalist Improvements (Optional but Appreciated)

  • We don't want to make TaskWarrior bloatedlike other task managers. - However, we encourage you to propose:
  • Minimalist UI improvements.
  • Feature enhancements that align with TaskWarrior's philosophy. - Improvements that boost productivity without adding complexity.

โœ… Why Is This Project Important?

By completing this project, you'll help:

  • ๐Ÿš€ Make TaskWarrior a powerful cross-platform task manager. - ๐Ÿ”„ Provide seamless sync between mobile, desktop, and CLI.
  • ๐Ÿ“ฒ Improve the overall user experience for TaskWarrior users.
  • ๐Ÿ’พ Ensure TaskWarrior remains fast, minimal, and focused.

We don't want bloat โ€” we want efficiency, speed, and simplicity.

โœ… Tech Stack

Here's the preferred tech stack:

Frontend:

  • โœ… Flutter + Dart(mandatory). - โœ… GetXfor state management.

CI/CD:

  • โœ… GitHub Actions. - โœ… F-Droidfor nightly releases.

Testing:

  • โœ… Flutter Test / Integration Test.

๐Ÿ“œ Ready to Contribute?

๐Ÿ‘‰ Start the Qualification Task

๐Ÿ’ฌ Questions? Put your questions in Zulip.

๐Ÿ“œ Helpful Resources

inthe.am- Open-source TaskWarrior sync server.Freecinc fork- Self-hosted TaskWarrior server.Golang TaskServer- Alternative TaskServer.Wingtask- Task management stack.

โœ… We're super excited to see how you contribute. Let's make TaskWarrior the most powerful open-source task manager โ€” without any bloat! ๐Ÿš€

Command Palette

Search for a command to run...