Skip to content

asartalo/diligence

Repository files navigation

Diligence

build Coverage Status LICENSE: GPLv3

Diligence is a free and open-source, tree-based, task management system.

Tree-based?

The idea is to break down tasks as much as you need into "actionable" tasks to lessen overwhelm increasing the chance you'll complete them. If you've done outlining before, this should be familiar to you.

Installation

As of the moment, Diligence is available as an AppImage and as a snap on the Snap Store.

Linux

For the source code and other (future) binaries, head onto Releases.

Roadmap

Visit the Diligence Project Page to get a sense of what's on the pipeline.

Development

Development happens on the main branch. When we're ready to release, we merge those changes to the release branch.

At the moment, the desktop app has only been tested on Linux. If you have an instance of the release version of the app running while developing, run the debug mode with the DILIGENCE_APP_ID_PREFIX set to something (e.g. "dev") so that it won't conflict with the release version.

See the following example command below to do this on the terminal.

DILIGENCE_APP_ID_PREFIX=dev flutter run

This environment variable has already been set on VSCode through the launch options. See .vscode/launch.json.

If you also want to run the integration tests and not want it to interfere with a Diligence desktop app installation, add the app id prefix too:

DILIGENCE_APP_ID_PREFIX=test flutter test integration_test/all_tests.dart

Testing Builds for Ubuntu

In Ubuntu you can run the following

snapcraft

This creates a snap file diligence_<VERSION>_amd64.snap. Install it with the following command:

sudo snap install ./diligence_<VERSION>_amd64.snap --dangerous

Preparing for Release

Create a pull-request from the main to the release branch. Only use "Merge pull request" option when resolving the pull request and not"Squash and merge". Only use "Squash and merge" when merging feature branches to the main branch.