A Nextcloud app that views and updates Deck boards in a Gantt chart.
This App is under development - use it at your own risk. It adds text to the description of a Deck card containing the start date and the progress when you change one of these parameters in the Gantt app! This is because Deck does not yet have these parameters natively implemented.
It uses the frappe-gantt library and is inspired by NxDeckGantt and Deck2Gantt.
A Deck board like this:
is shown as a Gantt chart like that:
The time range and progress of a card can be changed by dragging the bar or its handles with the mouse. The numbers in parentheses (e.g., 6/7) next to the titles indicate the number of checked checkboxes out of the total in the description — just like in Deck. The green check mark symbol synchronize with the “Done” field of Deck. It is automatically set when the progress is changed to 100%. A red exclamation mark denotes delay.
Clicking on a bar opens a popup with the card description:
You can eddit the description by clicking on the pencil or in the text:
Every interaction is synchronized with Deck via the Deck API. Also changes in Deck lead to an update of the Gantt chart, so one can have both Apps open and use them simoultaneously, i.e. create a card in Deck and then move it to the right position in time in Gantt.
| Deck show | ... edit | Gantt show | ... edit | |
|---|---|---|---|---|
| Due date | ✅ | ✅ | ✅ | ✅ (by mouse) |
| Start date | ❌ | ❌ | ✅ | ✅ (by mouse) |
| Progress | ❌ | ❌ | ✅ | ✅ (by mouse) |
| Done | ✅ | ✅ | ✅ | ✅ (via progress) |
| Description/Notes | ✅ | ✅ | ✅ | ✅ |
| Checkbox states | ✅ | ✅ | ✅ | ✅ |
| Task/card order | ✅ | ✅ | ✅ | ❌ |
| Title | ✅ | ✅ | ✅ | ❌ |
| Labels | ✅ | ✅ | ✅ | ❌ |
| Export | ☑️ (csv) * | - | ✅ (json) | - |
| Import | ❌ | - | ✅ (json) | - |
* Does not contain full board structure.
The app can be used outside of Nextcloud: Just download everything and open index.html. You should use a Nextcloud App Password to connect to your Deck boards (in Nexcloud go to Settings -> Security -> scroll down to "Add App Password").
Connect to your Nextcloud installation. E.g. if it is in a Docker container
# replace "nextcloud" with the name of your container name
docker exec -it nextcloud bash
Install git (if not already installed):
apt update
apt install git -y
Install ncgantt app:
# Clone the app from github
git clone https://github.com/rolliracker/ncgantt.git /var/www/html/custom_apps/ncgantt
# Activate the app
php occ app:enable ncgantt
After reloading Nextcloud in your browser you should see a Gantt icon in the app bar. If not, try to open it via https://<your-nextcloud.com>/apps/ncgantt
# Remove app directory
rm -r /var/www/html/custom_apps/ncgantt
# Clone from github
git clone https://github.com/rolliracker/ncgantt.git /var/www/html/custom_apps/ncgantt
# Deactivate
php occ app:disable ncgantt
# Activate
php occ app:enable ncgantt
After updating, do a hard refresh of the app in your browser by pressing Ctrl + Shift + R
