Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Desktop or Web #1256

Open
bscott opened this issue Dec 17, 2020 · 141 comments
Open

Desktop or Web #1256

bscott opened this issue Dec 17, 2020 · 141 comments

Comments

@bscott
Copy link

bscott commented Dec 17, 2020

I'm sure this has been asked, but when and if a desktop or Web app coming for Tasks.org

@abaker
Copy link
Member

abaker commented Dec 17, 2020

I would like to start working on one very soon! Unfortunately Tasks' is still lacking in the revenue department, but I'm hoping the new paid tasks.org sync service will start bringing in enough that I can justify focusing on a web or desktop app

@abaker abaker pinned this issue Dec 17, 2020
This was referenced Dec 23, 2020
@CaseOf
Copy link

CaseOf commented Dec 29, 2020

Hello,
Until a desktop version is available, what could we use on a computer to get a similar experience for synchronized tasks?

@am4c130d
Copy link

Rainlendar. https://www.rainlendar.net/cms/index.php

It works well for me - it runs on nearly any desktop (mac, Linux and Windows), supports multiple calendars/task lists in a unified view, CalDAV, subtasks and custom categories. The only "fails" for me are it doesn't support "hide until", and categories aren't synchronized - neither of which are deal breakers for me.

It's possible to drop the tasks list of Rainlendar on the desktop and have it function like an interactive widget, which is exactly what I wanted, so I've been able to mimic much of Tasks' capabilities. All the other calendaring features of Rainlendar I've disabled, but they're probably useful as well.

@oyren
Copy link

oyren commented Dec 29, 2020

Not much as far as I know, that's the problem.
Recently I discovered super-productivity, but I haven't tested it yet and I think it syncs via webdav instead of caldav.
Also, there are two pull requests out there for Getting Things Gnome to support caldav sync (getting-things-gnome/gtg#525 and getting-things-gnome/gtg#419)
They are looking for people to test it.
I tested the one from @jaesivsm a little bit and it works quite well, only my password seems to be forgotten and i could not add it anymore, but I guess I am just missing a package.

@LecrisUT
Copy link

LecrisUT commented Jan 4, 2021

I have tried to use super-productivity, and although its features are interesting, the UI is not to my liking. There is also some performance issues on startup, but I suspect that is common for any electron app.

I am then wondering how will @abaker approach cross-platform. I see that the code is developed to be android native so a lot of code refactoring will be needed. So will the desktop/web version be developed from scratch, or which language will the whole project be restructured around?

One possible solution I am tinkering with is using xamarin.forums and the upcoming MAUI which should make apps compatible with desktop environments, while still giving close to native performance. The language is C#, and there seem to be a few open libraries for simpler development of UI and other stuff.

@CaseOf
Copy link

CaseOf commented Jan 4, 2021

Mono is a nightmare on Linux 😨

@unite42
Copy link

unite42 commented Jan 4, 2021

I'm also searching for several days a tasks.org aquivalent desktop solution for windows with the possibility to sync with tasks.org. I didn't found yet. Maybe we don't have to reinvent the wheel.
imho there are several options:

  1. TaskCoach is also searching for an aquivalent android application. Maybe it's possible to add calDAV support for their desktop application for example by writing an bridge between there xml-based .tsk format and .ics so it could be synced with calDav/DAVX5
    https://taskcoach.uservoice.com/forums/26480-other-task-coach-requests/suggestions/288896-support-for-accessing-task-coach-items-on-android
    https://sourceforge.net/p/taskcoach/discussion/users/thread/176a9f79/

  2. KDE is currently working to bring Kontact to Windows. Maybe the KOrganizer could be an possible desktop client for tasks.org. They are searching for people who get involved!
    https://kontact.kde.org/download.html
    https://community.kde.org/Windows

  3. Another cross-plattform PIM project within the KDE Community is Kube. They are also searching for people who get involved!
    https://phabricator.kde.org/T1478
    https://kube-project.com/

  4. Vikunja has an electron-based desktop-app for there backend, with an early alpha stage calDAV-Support. At the moment the desktop client is only usable after login on the Vikunja Backend. Eventually it would be possible to fork and adjust the desktop-app for using only with a calDAV-sync.
    https://vikunja.io/features/
    https://vikunja.io/docs/caldav/

@am4c130d
Copy link

am4c130d commented Jan 5, 2021

Not trying to be a fanboy, dismissive of @abaker 's work or anyone else's input, but Rainlendar does pretty much everything already. With a bit of config tuning it has met virtually all of the use cases I have for a desktop partner to Tasks.

It syncs with Tasks via CalDav, supports subtasks, custom categories/tags, multiple lists/calendars, priorities, due dates, start dates, recurring tasks, comments etc. I use all of these capabilities daily creating tasks on desktop or my phone - whichever is more convenient. The only thing I use in Tasks that's missing in Rainlendar is Hide Until - and even that concept is supported to some extent for recurring tasks.

I may be missing something, but this seems like a complete working solution for all modern desktops except Chrome already - and Tasks via Android on Chrome makes more sense.

However, syncing does require a (one-time 10 euro) license and that maybe an issue for some, and there is no web client.

@unite42
Copy link

unite42 commented Jan 8, 2021

@am4c130d I can only speak for myself. Is not that I'm unable to pay 10 euro, I would rather like to see a FOSS-Solution.

@c5c86a
Copy link

c5c86a commented Jan 20, 2021

I would like to start working on one very soon! Unfortunately Tasks' is still lacking in the revenue department, but I'm hoping the new paid tasks.org sync service will start bringing in enough that I can justify focusing on a web or desktop app

I want to pay but I don't see how I can create a tasks.org account for syncing. I would expect a signup button in the top of the homepage visible even from mobile. Having to go through github sponsordhip is kind of geeky and I don't want to share my tasks with Microsoft.

@abaker
Copy link
Member

abaker commented Jan 20, 2021

Yeah unfortunately I haven't implemented my own sign up or payments yet. Currently you have to either sign-in with Google (if you have a Google Play subscription) or GitHub (if you're a GitHub sponsor). This is only for identity and payment verification, your data is stored on my VPS

@c5c86a
Copy link

c5c86a commented Jan 20, 2021 via email

@BeatLink
Copy link

BeatLink commented Feb 1, 2021

It would be so cool to have a web based version of tasks.org. You could combine it with the sync service for a revenue stream while keeping it open source by allowing others to self host. You could even wrap it up in a cross platform electron wrapper. I would literally pay to help see that happen!

@abaker
Copy link
Member

abaker commented Feb 1, 2021

That's the dream 🤞

I just need to double Tasks current monthly revenue in order to make that happen. NBD, right?

@oyren
Copy link

oyren commented Feb 1, 2021

I would prefer a native client, with good keyboard navigation. There are already some self-hostable tasks, e.g. EteSync Web. What doesn't exist (at least I haven't found one) is a native client.

Anyway, thanks for the great work @abaker.

@ccoenen
Copy link

ccoenen commented Feb 1, 2021

Yes, and that native client will of course need to run on Windows, Mac OSX (intel and arm), Linux (as deb, aur, rpm, flatpack, appimage and snap), FreeBSD, android (oh wait, we already have that covered!), iOS (seperately for smartphone and tablet size), and I'd really really like to sync up my palm m105 and blackberry.

Well-made browser software can be navigated entirely with the keyboard. You don't need a native application for that. I don't think "native" is a good benefit-per-cost ratio.

@abaker
Copy link
Member

abaker commented Feb 1, 2021

Yeah unfortunately I wouldn't have the bandwidth to write native apps myself. I'm going to offer an option to sync Tasks' non-standard fields as x-properties. If there were any highly motivated individuals out there they could write their own Tasks.org-compatible native CalDAV app

@oyren
Copy link

oyren commented Feb 1, 2021

@ccoenen I am well aware of the advantages of browser software, yet i and many others prefer a native client. And as i said i would prefer it, i don't require it. I had a little hope in this regard since Tasks is a pure android client, so for me only a desktop client is missing and there it is quite possible to make it run on Windows, Mac and Linux, both on x86 and Arm. In addition, Tasks.org would have a standalone feature.
But since even large companies now almost always decide against it, it was quite clear to me that the probability is low ;).

@dpriskorn
Copy link

With GTK there is a possibility to add a backend that produce byte code that runs well on say Android or iOS.
We have the same issues with the WikidataApp and despite Flutter seeming attractive at a first glance it's support for desktop is dependent on snap which is pretty crappy.
So it seems that these walled gardens are making it hard to write something well once and run it everywhere.
If we all just switched to GNU/Linux phones the problem would be solved and as a bonus we would not have Google and Apply and tons of proprietary apps spying on us all the time. See https://www.privacyinternational.org/long-read/3196/no-bodys-business-mine-how-menstruations-apps-are-sharing-your-data

@BeatLink
Copy link

Okay so what I'm suggesting is a 3 stage plan to get tasks to desktop

  1. Generate a list of existing desktop and or web based software that can sync with tasks using caldav. These apps would ideally include as many similar features of tasks as possible. Some key ones i can think of are granular recurrence, subtasks and tags

  2. Working together to build a web/electron based desktop client. Going the web based route will allow the same codebase to be accessible to all major platforms, namely windows, mac and linux.

  3. In the distant future if @abaker would be up for it, we could start working on native clients for linux, and maybe windows and mac.

But i think the web/electron based desktop app is the route to go. Especially if the web based version can be incorporated into the tasks.org sync service to generate revenue, or into self hostable instances for people who would like to host their own software

@dpriskorn
Copy link

I just bought a pinephone. I'm curious to see what apps I can find to have my need for tasks handling met on GNU/Linux.

@kolaente
Copy link

kolaente commented Feb 27, 2021

Vikunja has an electron-based desktop-app for there backend, with an early alpha stage calDAV-Support. At the moment the desktop client is only usable after login on the Vikunja Backend. Eventually it would be possible to fork and adjust the desktop-app for using only with a calDAV-sync.

@unite42 Just chiming in to say that you can use the tasks.org app with tasks from Vikunja 🙂

Forking the frontend is possible but you would need to essentially rebuild the api part or change the connection there. Doable, but would be a lot of work. Maybe an easier way would be to get the tasks into Vikunja to then use the apps?

@lilithium-hydride
Copy link

Try it with vikunja.io 👁canonical: vikunja.io×?sources : firefox20/01/2023, 19:41:45 ! It has filters, hotkeys, tags and much more smile

That's absurdly heavy for a simple tasks app imo. I can't imagine this would satisfy most people, and it definitely isn't the snappy native app that many seem to be asking for.

I've been using the two together for over a year now without any problems at all !

I'm sure it works quite well, it certainly looks like a lot of work was put into it. My point still stands.

@kolaente
Copy link

I'm sure it works quite well, it certainly looks like a lot of work was put into it. My point still stands.

Oh can do a lot more than just a simple task app. But I'd argue you can use it without problems as such and start using more when you need it. The "heavy" features don't get in your way.

(Disclaimer: I built Vikunja)

@lilithium-hydride
Copy link

I'm sure it works quite well, it certainly looks like a lot of work was put into it. My point still stands.

Oh can do a lot more than just a simple task app. But I'd argue you can use it without problems as such and start using more when you need it. The "heavy" features don't get in your way.

(Disclaimer: I built Vikunja)

I don't mind some feature bloat in these sorts of things. Tasks also has some features that I don't use. When I say that it's heavy, I'm talking mainly about resource usage. Docker? Vue? Web servers? k8s? A separate frontend and backend? It doesn't matter if I simply ignore features I don't care about, there's still a massive web application stack either running at all times or having to spin up every time I want to access my tasks, a stack that has such a large dependency tree that each of the weekly npm malware incidents is more likely to affect me than not. Sure, I can pay for server hosting and run it remotely and at least free my personal devices from the burden of running it, but I'm then fully dependent on a fast, stable network connection to... use a planner.

@kolaente
Copy link

I don't mind some feature bloat in these sorts of things. Tasks also has some features that I don't use. When I say that it's heavy, I'm talking mainly about resource usage. Docker? Vue? Web servers? k8s? A separate frontend and backend? It doesn't matter if I simply ignore features I don't care about, there's still a massive web application stack either running at all times or having to spin up every time I want to access my tasks, a stack that has such a large dependency tree that each of the weekly npm malware incidents is more likely to affect me than not. Sure, I can pay for server hosting and run it remotely and at least free my personal devices from the burden of running it, but I'm then fully dependent on a fast, stable network connection to... use a planner.

If that's where your prioties are then Vikunja might not be for you.

Deployment with Docker or k8s are one option and not mandatory. You can also use the desktop app (mind you, it's an electron app but there's a PR open to migrate that to tauri) and run the api on your computer with a default config and sqlite, without any servers to manage. I know people in the community running it successfully for multiple people on a single raspberry pi. From my own tests you can put 100 people on a decent single-core vps. And you can use it with Tasks.org without the vue-frontend.
We get npm updates within an hour of them being published and they are merged pretty soon after that. Automatic builds ensure you as an end-user get the update fast after that.

It's all a trade-off between different factors. What isn't?

Anyway, I feel like this is getting somewhat off-topic here, would love to continue that discussion on matrix or in the forum

@SamirSaidani
Copy link

SamirSaidani commented Jan 23, 2023

I'm sure it works quite well, it certainly looks like a lot of work was put into it. My point still stands.

Oh can do a lot more than just a simple task app. But I'd argue you can use it without problems as such and start using more when you need it. The "heavy" features don't get in your way.

(Disclaimer: I built Vikunja)

We've already discussed this with @kolaente , I gave up on Vikunja because it cannot be used with caldav concurrently with Tasks, and I'm using intensively Tasks with caldav (nextcloud). So for me it's a no go. For the moment, I'm using Tasks on Android and Nexcloud Tasks on the desktop. There is also a proprietary solution, emclient, able to use caldav, but not really reliable so I'm only using it for reading only. Last solution is rainlendar, which is working, but the UX is really ugly. All in all, nothing available on the desktop as far as I know, using caldav in a full extent, even a proprietary one.

@dahamsta
Copy link

+1 for the over-complication of Vikunja for this purpose. It's clearly a great app for some, but it's out beyond a standard task manager and simply too complex and awkward to use for my personal needs.

It should also be pointed out that not finding something useful isn't the same as being critical.

@ItsIgnacioPortal
Copy link

ItsIgnacioPortal commented Feb 9, 2023

✨I've made an easier guide for how to setup Etesync and Tasks.org in Windows!✨

This one doesn't use WSL or nginx. This setup sits at a beatiful 0% of CPU and 58.3MB of RAM when idle, and up to 0.6% of CPU when it's working (For context, I have a Intel Core i7-4702MQ CPU @ 2.20GHz).

https://itsignacioportal.github.io/how-to-setup-etesync-for-tasks-org-in-windows/

@SamirSaidani
Copy link

✨I've made an easier guide for how to setup Etesync and Tasks.org in Windows!✨

This one doesn't use WSL or nginx. This setup sits at a beatiful 0% of CPU and 58.3MB of RAM when idle, and up to 0.6% of CPU when it's working (For context, I have a Intel Core i7-4702MQ CPU @ 2.20GHz).

https://itsignacioportal.github.io/how-to-setup-etesync-for-tasks-org-in-windows/

Thanks for the guide!

Is it reliable to have two layers to access to my tasks? First caldav, then etesync, two layers for data I really care about is a lot, and I really don't want to lose tasks on the way.

Is etesync webapp usable for a GTD workflow? As far as I remember, the UX was pretty basic (no filtering for instance).

@ItsIgnacioPortal
Copy link

Is it reliable to have two layers to access to my tasks? First caldav, then etesync

I'm not sure I undestand. Etesync connects directly to the Tasks.org android app. Do you mean you want to sync your tasks with an Etesync instance and a separate caldav server?

@SamirSaidani
Copy link

Maybe I don't understand how etesync works, I'm using caldav so I guess that we have caldav<->etesync<->tasks ? Or do you mean that I first import all my caldav tasks to etesync ?

@ItsIgnacioPortal
Copy link

Maybe I don't understand how etesync works, I'm using caldav so I guess that we have caldav<->etesync<->tasks ? Or do you mean that I first import all my caldav tasks to etesync ?

If you're using etesync, you won't need a caldav server.

@ccoenen ccoenen mentioned this issue Apr 9, 2023
@Av1ators
Copy link

Av1ators commented Apr 9, 2023

I understand that it is difficult to create a version for each operating system, but useful is useful a version synchronized with the task.org account.
Please, consider creating a vision from the web, so that on my PC I can access the notes.

@primeapple
Copy link

I'm sure it works quite well, it certainly looks like a lot of work was put into it. My point still stands.

Oh can do a lot more than just a simple task app. But I'd argue you can use it without problems as such and start using more when you need it. The "heavy" features don't get in your way.
(Disclaimer: I built Vikunja)

We've already discussed this with @kolaente , I gave up on Vikunja because it cannot be used with caldav concurrently with Tasks, and I'm using intensively Tasks with caldav (nextcloud). So for me it's a no go. For the moment, I'm using Tasks on Android and Nexcloud Tasks on the desktop. There is also a proprietary solution, emclient, able to use caldav, but not really reliable so I'm only using it for reading only. Last solution is rainlendar, which is working, but the UX is really ugly. All in all, nothing available on the desktop as far as I know, using caldav in a full extent, even a proprietary one.

Just a note: Vikunja now also syncs tags of tasks through CalDav. Somewhat buggy, but they already fixed it in the next release.
It has hickups with Subtasks, tho.

@krillin666
Copy link

I'm sure it works quite well, it certainly looks like a lot of work was put into it. My point still stands.

Oh can do a lot more than just a simple task app. But I'd argue you can use it without problems as such and start using more when you need it. The "heavy" features don't get in your way.
(Disclaimer: I built Vikunja)

We've already discussed this with @kolaente , I gave up on Vikunja because it cannot be used with caldav concurrently with Tasks, and I'm using intensively Tasks with caldav (nextcloud). So for me it's a no go. For the moment, I'm using Tasks on Android and Nexcloud Tasks on the desktop. There is also a proprietary solution, emclient, able to use caldav, but not really reliable so I'm only using it for reading only. Last solution is rainlendar, which is working, but the UX is really ugly. All in all, nothing available on the desktop as far as I know, using caldav in a full extent, even a proprietary one.

Just a note: Vikunja now also syncs tags of tasks through CalDav. Somewhat buggy, but they already fixed it in the next release. It has hickups with Subtasks, tho.

It seems subtasks are already being worked on to sync with Tasks.org: https://kolaente.dev/vikunja/api/pulls/1442

@T5000
Copy link

T5000 commented Jun 12, 2023

A webapp would be awesome :)

@trymeouteh
Copy link

I would suggest using flutter which will allow you to compile a mobile and desktop app. If the app is written in flutter, then this app can be released for ios, windows, macos, linux and android

@RokeJulianLockhart
Copy link

RokeJulianLockhart commented Jun 18, 2023

@trymeouteh, I disagree, because a Mac appears to be necessary to compile Flutter code due to its dependence upon XCode. More versatile GUI frameworks exist, like the (automotive) industry standard Qt 6, which supports Windows 11, Android 9, Linux 5, and custom embedded systems. Krita is an example of a cross-platform standard Qt application.

qml, which is a dialect of JavaScript, can separate the Qt GUI logic from the underlying .c/.cpp/python3 code. https://community.kde.org/Android/FDroid demonstrates much software built with Kirigami, a QML framework. All of it works on Linux and Android at least, and some on Windows, like Elisa.

@ccoenen
Copy link

ccoenen commented Jun 19, 2023

I think it's safe to say that @abaker has by now probably heard an seen all the options. Certainly options like Flutter and Qt, which have been around for years. Flutter in particular has been brought up in this issue in 2021.

can we please limit new posts to

  • people who actually (themselves!) want to make a meaningful effort towards this
  • suggestions of good, established software that can be used in the meantime

Adding your favorite technology to the list does not get this implemented. It only gets 40+ people notified.

@ccoenen ccoenen mentioned this issue Jul 5, 2023
@AaronKnowls
Copy link

I hope one day this will be achieved and I can go back to this app that I loved so much.

@antrmn
Copy link

antrmn commented Dec 22, 2023

Getting Things Gnome: CalDav is not working for me, it syncs only one time when adding a note, then it stops (see their github)

As stated in getting-things-gnome/gtg#892, it is because the task needs to be tagged with @DAV_{Collection-name} in order to be pushed. It is unclear to me if this is intended behaviour or not.

GTG looked like an abandoned project to me, but It is actually facing a big refactor and a porting to GTK4: https://fortintam.com/blog/call-for-testing-gtg-gtk4-branch/ if anyone wants to try and test it out.

GTG looks like a valid task manager app - theoretically - with its plugin mechanism and python introspectable core.

@antrmn
Copy link

antrmn commented Dec 27, 2023

As a recent addition there's Errands which is a GTK app that allows to sync with any CalDAV provider. It supports subtasks, priorities, progress, scheduled/deadline times, descriptions...

No recurring tasks support or filtering/searching support yet, though. It is in recent active development (the features mentioned above are on master branch - no release yet) so keep an eye on it.

@12people
Copy link

I realize that mentioning technologies is discouraged here, BUT there might be one up-and-coming tech that could be of use here and that @abaker might have not yet heard about.

It's Compose Multiplatform, which should allow easily porting Android apps written with Jetpack Compose to other platforms. It's an open-source library created by Jetbrains, the guys behind Kotlin.

Perhaps that might be a solution? It should only require adjustments to the code, rather than a complete rewrite for a different platform.

@tracestep
Copy link

I am a subscriber to tasks.org. I noticed that I was needing more and more a desktop version / web app - I was picking my to-dos for the day and manually inserting it into, at first, a sticky-note on my desktop, and later, a Google Keep list, so I could keep track of my daily activities on my workstation without needing to pick up the phone and tap around until I got to the list view I needed. But I often marked one task completed on Keep and forgot to to the same on the tasks.org task... and, likewise, sometimes I entered a last-minute to-do on Keep, but forgot to add it to tasks.org. It was a mess.

Seeing that this issue has been open for three years now, what I ended up doing was switching to Ticktick. At first it seemed that it could not do everything I did with tasks,org, but I eventually found workarounds for my workflow. And I even got to like some unique features (e.g.: kanban-like boards) that are missing in tasks.org.

@Av1ators
Copy link

Same, now i switching to Joplin.

@dylanmorroll
Copy link

dylanmorroll commented Jan 18, 2024

I actually finally got round to setting waydroid up on my linux machine (via weston), and that's been a pretty good solution for me :) the CPU usage is pretty low as well, so I just keep it running!

@umgpy
Copy link

umgpy commented Jan 26, 2024

Planify (previously known as Planner) has recently add CalDAV with Nextcloud support (alainm23/planify#1118). I feel with this integration one can finally have a good cross-plaform workflow on linux at the least.

@ccoenen
Copy link

ccoenen commented Jan 26, 2024

It's not yet in any released version, but it looks like it could be included soon.

Edit: Planify 4.5 has been released on 2024-02-21 including Nextcloud integration (according to release notes)

@umgpy
Copy link

umgpy commented Jan 26, 2024

Yes not in the release version yet but most features are implemented so it should release in the next release.
Nonetheless, I am happy to report that Tasks.org ⇔ nextcloud ⇔ Planify is working.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests