.gitea/issue_template | ||
android | ||
assets | ||
fonts | ||
google_fonts | ||
l10n | ||
lib | ||
linux | ||
metadata | ||
packages/like_button | ||
test | ||
windows | ||
.gitignore | ||
.metadata | ||
analysis_options.yaml | ||
app-lang-creator | ||
checker.py | ||
CONTRIBUTORS | ||
doable_metadata_creator | ||
fetch_translations.sh | ||
flutter_launcher_icons.yaml | ||
flutter_native_splash.yaml | ||
font_licenses.json | ||
l10n.yaml | ||
LICENSE | ||
Makefile | ||
PRIVACY.md | ||
pubspec.lock | ||
pubspec.yaml | ||
README.md | ||
spider.yaml |
Doable
At its core Doable is a modern and easy to use Todo app.
It features a beautiful design that follows the latest Material 3 guidelines, a simple user interface that allows you to manage your tasks with ease and last but not least a seamless integration with Nextcloud.
When you open Doable for the first time you might be mistaken to think that it lacks some features you might've been hoping for like separate lists. But fear not! Doable does indeed support such things! The are just not enabled by default. To enable lists and other amazing features check out the "Extensions" section in Doable's settings!
Doable also supports integration with Nextcloud which allows you to backup and synchronize your tasks across multiple devices – or just keep a handy backup of them in case something goes wrong. Simple log in to your Nextcloud account and boom! Your Todos will now be synchronized automatically. (You can also use any other backup server that supports the WebDAV interface.)
Features
Design and interface
Doable features a simple yet powerful interface in a beautiful design that closely follows Androids Material 3 guidelines.
Introduction to the app | Adding a new task | A task being selected | Detail view of a task with Markdown |
Adding a due date and time to a task | Creating a new list | Adding a task to an already existing list | Selecting which list a task belongs to |
Settings and customization
You can customize many aspects of Doable including
- How tasks will be sorted
- The colors of the app
- How to handle certain cases as tasks being overdue or being due today
- ...
Extensions
Doable allows you to further customize your experience by enabling certain extensions. Extensions can change the behavior of the app and allow you to user features that are not included out of the box. The current extensions consist of the following:
-
Lists
Create lists and sort your Todos with them! You can create as many lists as you'd like to manage all of your task needs!
-
Notifications (beta)
Doable will notify you when your tasks are due so you never forget that important todo again. A long awaited feature that is now finally in beta and you can try it out for yourself!
-
Recurring Todos (beta)
Another long awaited feature is finally here! You can now finally create Sisyphus tasks and complete the same task every day / week / month / year!
In a future update you will also be able to customize those options and choose exactly how and when you want your tasks to repeat.
-
Markdown
One of the most important features in any app that supports text input: Markdown! You can use all your favorite styling options to add flavor to your todos. While Doable does not support the entire syntax, it supports most of it. Here is a complete list:
Feature Code Bold **Bold**
Italic *Italic*
Underline __Underline__
Blockquote
> Blockquote
Ordered / Unordered lists - ...
/1. ...
Task lists - [ ] To do
/- [x] Done
Links [Links](https://doable.at)
Highlighting ==Highlighting==
Strikethrough~~Strikethrough~~
-
Images (beta)
Want to add additional context to your tasks? Then this extension is for you; allowing you to add an image to every task!
Unfortunately images will not yet be synchronized and are unique to each device.
-
Swipe actions
We all love to swipe, swipe, swipe! So with this extension you can swipe your tasks around to perform different actions of your choosing! You can star / unstar a task, delete it or simply compelte / uncomplete it!
-
Progress bar
Need more fine grained control over the completion state of your task? This lovely extension adds an individual progess bar to each and every task so you can track any and all progress.
-
Reader mode
With this extension you can switch between edit and reader mode when opening a task. This allows for a better overview over larger tasks as well as giving you the option to simply admire what you've wrote.
-
Todo search
Find yourself searching for that one specific todo you still haven't done? Well then search might be for you! Simply search for part of the todo to find it.
Nextcloud integration
You can log into your Nextcloud account to automatically synchronize your tasks across devices.
Installation
From a release
You can simply download the latest release apk from the releases page and install it! You might have to go into the settings and allow installing apps from an external source tho.
F-Droid
To install this app via F-Droid simply add my repository to the app and search for "Doable"!
You can find the repository here.
Build it yourself
Since this is open and free software you can also just compile the program yourself! To do that you simply need to be on the latest flutter master branch – or any other branch, assuming it includes all the features used here.
You can switch the channel flutter uses with the following two commands.
flutter channel master
flutter upgrade
After that you can simply run flutter build apk
to generate an apk ready to be installed on your
phone.
Be careful if you choose the main
branch for compiling your apk, be aware that the app name
and its android id will be different from the ones you would get from the stable
branch. Since I
use the main
as my default branch and to test my app, I changed the app name / label to
"Doable DEBUG" and the id to at.flobii.doable_debug
. If you want to change those, either compile
from the stable branch or simply change them. Below you can find a table detailing what needs to be
changed.
File: line(s) |
What you need to change |
---|---|
android/app/build.gradle: 53 |
at.flobii.doable_debug → at.flobii.doable |
android/app/src/main/AndroidManifest.xml: 1, 20 |
at.flobii.doable_debug → at.flobii.doable , "Doable DEBUG" → "Doable" |
android/app/src/debug/AndroidManifest.xml: 1 |
at.flobii.doable_debug → at.flobii.doable |
android/app/src/profile/AndroidManifest.xml: 1 |
at.flobii.doable_debug → at.flobii.doable |
android/app/src/main/kotlin/at/flobii/doable/MainActivity.kt: 1 |
at.flobii.doable_debug → at.flobii.doable |
Besides the name changes you should also consider updating the version name and code in the
pubspec.yaml
file, since those are also only changed on the stable
branch.
Contribute
You want to contribute to Doable? Great! You don't know how you can help? Well, here are your options!
Create an issue
The simplest way to support and help Doable is by creating an issue whenever you have an idea / feature request or you want to provide feedback or maybe you've found a bug / problem!
Translating
If you speak a language Doable is not yet translated into you can help by translating it! Simply follow this link to Doable's Weblate page to find out more!
Translation status
Pull requests
PRs are also appreciated! If you do make one, please provide a description why this PR is necessary so that I can understand its purpose quicker! And thanks in advance for spending your time on contributing!
CONTRIBUTORS
file
The CONTRIBUTORS
file features a (hopefully) complete list of all the people that
contributed to Doable. If you feel like you should be included you can either:
- Open an issue
- Make a PR
- Write me a message on Doable's Mastodon account