Will Be Done - modern offline-first self-hosted TickTick/Todoist alternative
from quolpr@lemmy.world to selfhosted@lemmy.world on 08 Mar 14:02
https://lemmy.world/post/43994429

I’ve been building a self-hosted task manager focused on something I couldn’t find in one package: true offline support, fast sync across devices and API support.

Most open source task apps I tried leaned toward either:

Will Be Done is my attempt to solve both.

Demo: demo.will-be-done.app

GitHub: github.com/will-be-done/will-be-done

Home page: will-be-done.app

What is supported right now:

Planned in the near future:

Why I built it:

This is my third attempt over the last 3 years to build my ideal task manager, and I now use it daily.

I’ve worked on local-first and sync-heavy systems professionally, so offline-first architecture is something I care a lot about getting right.

Installation:

Single Docker command, no docker-compose, no external dependencies, SQLite included.

docker run -d \
  -p 3000:3000 \
  -v will_be_done_storage:/var/lib/will-be-done \
  --restart unless-stopped \
  ghcr.io/will-be-done/will-be-done:latest

Then open http://localhost:3000/.

Would love feedback from people here, especially if you care about self-hosting, offline-first apps, or replacing proprietary task managers.

#selfhosted

threaded - newest

Nednarb44@lemmy.world on 08 Mar 14:19 next collapse

This looks solid. I’ve been using SuperProductivity for a while, but the json syncthing uses to sync between my computer and phone keeps breaking. Your project looks like it has a very similar interface, which I like. I’m looking forward to giving this a shot.

Edit: any chance for a mobile app on f-droid down the road?

quolpr@lemmy.world on 08 Mar 15:07 collapse

Yep, that’s why I don’t like SuperProductivity, it’s hard to make proper sync on top of json/caldav(especially with proper conflict resolution). As far as I know, SuperProductivity building its own cloud sync protocol, but it’s plan to be a paid feature anytime.

As for mobile version - yep, I plan to add them too. It’s already support PWA, so you can install app as a bookmark (and it opens pretty fast btw! And works offline also). But I want to have proper notifications in future and maybe widgets, so andriod/ios will be, but not sure when.

Thanks for the feedback!

Nednarb44@lemmy.world on 08 Mar 17:00 collapse

Yeah I think them adding a cloud sync as a paid option is entirely fair, but not something I want.

Thanks again for sharing the project!

quolpr@lemmy.world on 08 Mar 17:35 collapse

Yep, I agree too, it’s totally fair 👍

Thanks for your feedback!

cheese_greater@lemmy.world on 08 Mar 14:19 next collapse

Are infinite nesting/subtasks and drag/drop possibillities for the future?

I would kill for a Todoist replacement like that. GoodTask is pretty damn close but theres always still that itch that only Todoist scratched lol

Very ripe area for your efforts, right on bro

quolpr@lemmy.world on 08 Mar 15:02 collapse

Thanks for the feedback!

DnD is already here. You can reorder tasks/move to other projects. And as for nesting, it’s pretty complex feature. It will be hard to implement and maintain (especially maintain), so not planning right now, unfortunately. But at least I plan to add subtask list.

cheese_greater@lemmy.world on 08 Mar 15:12 collapse

Thx for thoughts, ya its probably a but of a doozie in terms of complexity. Setimes i wonder if its better for me i dont have that capabillity anymore, gotta split things up, more+, +rather

modular950@lemmy.zip on 08 Mar 22:18 next collapse

Going to give this a look-see!

Currently having an issue where launching from the PWA (via Vanadium on GrapheneOS) results in the manifest.json page rather than redirecting to login or cached session. I suspect this has more to do with my own browser configuration possibly, but once I get that sorted, I’ll be eager to take it for a drive!

ki9@lemmy.gf4.pw on 09 Mar 00:40 next collapse

Been meaning to make something like this, where every day has a list and I can swipe through days. I want uncompleted tasks to be moved to the next day at midnight. Finally, I want default (repeating) tasks every day or every week, which don’t carry over.

Been too lazy to make it myself so right now I have a daily todo list template (text file) that gets copied to $(date -I).md a month in advance. I keep a few days open in nvim tabs and access them on my phone via ssh/termux. Then the cronjob archives old lists. Kludgy but been using it for years.

PointyFluff@lemmy.ml on 09 Mar 06:05 collapse

oh boy; yet another bloatware todo app; and it runs on container. Extra resource-nice!