Skip to content
openzaPublic

About

Windows-native, local-first task manager with SQLite, Todoist/Microsoft To Do sync, durable backups, and optional OneDrive cloud backup.

Topics

Resources

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

156 Commits

Folders and files

Repository files navigation

Openza Tasks

Linux First. Windows Native. Local First. Open Source.

Openza Tasks is a task manager for people who want fast local capture with optional provider sync. The Windows edition remains a native WinUI 3 app, while the new Avalonia desktop edition targets Linux first and keeps Windows and macOS compatibility. Both use the same local-first SQLite core.

Openza Tasks is maintained by Deependra Solanky as a personal open-source project. Microsoft sign-in may show the Openza app name with the solanky.dev publisher/contact identity.

User guide: solanky.dev/openza/tasks

Features

  • Linux-first desktop app - Avalonia with first-class keyboard and desktop workflows
  • Native Windows app - WinUI 3, MSIX packaging, Mica where available
  • Local-first storage - tasks, projects, labels, backups, and imports live on your device
  • Provider sync - optional Todoist and Microsoft To Do reconnect/sync
  • Local restore points - automatic and manual SQLite restore points support rollback inside the app package state
  • Optional durable backup - restorable backup snapshots can be uploaded to the app's OneDrive folder or exported by the user
  • Focused task layout - navigation, projects, task list, and details in one productive surface
  • Markdown import/export - import GFM checkboxes and export tasks grouped by project
  • Clean local database - Store V1 starts fresh with planner-ready local data

Download

Openza Tasks V1 is live on the Microsoft Store:

Openza Tasks 1.1.0 for Linux is available as a strict Snap from the GitHub release while Snap Store publication is pending. Download the .snap and matching .sha256 asset, verify the download, then install it:

sha256sum --check openza-tasks_1.1.0_amd64.snap.sha256
sudo snap install ./openza-tasks_1.1.0_amd64.snap --dangerous

Snap uses --dangerous for a local package installed without a Snap Store assertion. Openza Tasks remains strictly confined. The release page explains how to switch to Store-signed automatic updates when they become available.

Legacy Flutter-era packages remain available in older GitHub releases, but they are no longer the active product line. Store V1 starts with a clean WinUI workspace and can reconnect integrations.

Building From Source

Linux desktop development

Install the .NET 10 SDK, then run:

./dev.sh

Source launches always use the isolated maintainer-only Dev directory. For disposable testing, OPENZA_TASKS_DEV_DATA_DIR may override that Dev path; Production builds ignore it.

Run the matching Dev CLI with ./dev-cli.sh. See docs/cli.md for its command contract.

The Linux app currently includes smart lists, Spaces, projects, search, sorting, filtering, grouping, task details, labels, dates and deadlines, subtasks, Markdown import/export, restore points, connected-task intake, Todoist and Microsoft To Do synchronization, optional OneDrive backup, and GitHub issue creation and linking. The Snap bundles Secret Service tooling and accesses the desktop Secret Portal; source runs require the host libsecret-tools package before connecting an account.

Build the strict Linux Snap from the repository root:

bash packaging/snap/build-local-snap.sh artifacts/snap/openza-tasks.snap

The Snap contains both the openza-tasks desktop command and the namespaced openza-tasks.openza CLI. The short openza command is requested as a Snap Store automatic alias before public release. Generated packages are written under the ignored artifacts/snap/ directory.

Maintainer registration, edge testing, and same-revision promotion are documented in docs/snap-release.md. Integration configuration and remaining native acceptance checks are documented in docs/avalonia-parity.md.

Windows prerequisites

  • Windows 10 22H2 or Windows 11
  • .NET 10 SDK
  • Visual Studio 2026 Community or newer with:
    • .NET desktop development
    • Universal Windows Platform development
    • Windows App SDK C# components

Microsoft's WinUI setup can install the required workloads:

winget configure -f https://aka.ms/winui-config

Build And Test

dotnet restore Openza.Tasks.slnx
dotnet test src\Openza.Tasks.Tests\Openza.Tasks.Tests.csproj -c Release
dotnet build src\Openza.Tasks\Openza.Tasks.csproj -c Release -p:Platform=x64 --no-restore

Run In Visual Studio

  1. Open Openza.Tasks.slnx.
  2. Select the Openza Tasks launch profile.
  3. Use x64.
  4. In Configuration Manager, enable Build and Deploy for Openza.Tasks.
  5. Press F5.

Architecture

src/
  Openza.Tasks/        WinUI 3 packaged app
  Openza.Tasks.Desktop/ Avalonia desktop app
  Openza.Tasks.Core/   SQLite data, backups, import/export, provider sync
  Openza.Tasks.Tests/  Unit, repository, backup, and sync tests

The sync engine is C# in Openza.Tasks.Core. Historical Rust FFI work is preserved in git history and legacy releases; it is not shipped with the WinUI app.

Legacy Flutter App

The last Flutter-era mainline is preserved on the legacy-flutter-app branch. Active development targets the Linux-first Avalonia host in src/Openza.Tasks.Desktop/ and the Windows-native WinUI host in src/Openza.Tasks/, sharing src/Openza.Tasks.Core/.

See docs/architecture.md for the V3 task model, provider wrapper pattern, and future sync-route design. See docs/design-guidelines.md for the Openza Calm Fluent production UI language.

Microsoft To Do and OneDrive backup use Openza's built-in public Microsoft app registration. Developers can override the public client ID at build time for testing, but normal users do not need to configure Azure app registrations or client IDs.

Privacy

Openza Tasks does not add telemetry or analytics. Windows uses Credential Locker and a protected MSAL cache. The Linux desktop uses Secret Service, accessed through the Secret Portal in the Snap, for provider tokens, the Microsoft token cache, and backup passphrases. Account identifiers and preferences remain in local settings. Provider sync, GitHub issue creation, and OneDrive backup send data to the selected service when used. See PRIVACY.md.

License

The source code and documentation are available under the MIT License. Openza names, logos, and official app icons are reserved brand assets; see BRAND.md. Third-party dependencies remain subject to their respective licenses; see THIRD-PARTY-NOTICES.md.

About

Windows-native, local-first task manager with SQLite, Todoist/Microsoft To Do sync, durable backups, and optional OneDrive cloud backup.

Topics

Resources

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages