Yesterday I started playing around with a new database to see if it is possible to make a task management system using nothing but standard functionality in Pages. I am going for a list type of task management similar to Jira as the first step and so far it is going pretty well.
The biggest challenge so far is of course that Pages do not have hierarchies. Task management should have at least tasks and subtasks, which is proving to be a bit challenging. My first try is based on just having a separate issue type called subtask that is not shown in lists, only if it is related to another issue. It is a crutch, but it seems to work so far.
I am using categories as something between an Epic and a component, but it makes it fairly easy to manage that type of categorization. Labels are of course built in as are notifications, so that i nothing I have to worry too much about.
A challenge I need to figure out if how to make fields editable in the front end instead of having to go through the edit form all the time. I can make the fields editable in the frontend just fine, but they are all tossed out in one place, so I need to figure out how to reposition them where I need them. I also need to make it so that people that can edit can see the edit fields and the ones that can not edit only see the output.
Create new subtasks is another thing I want to find a good solution for. Just an input fields and a submit button would be ideal for quickly creating new subtasks inline. I can add the database relation in a hidden field and then refresh the issue to see the newly created subtask. It should work, but I need to find out how to do it as right now it is not working properly.
This should be a fun side-project and later on I will try to add a drag and drop functionality for ranking in the list. I also will try to find a solution for making a kanban board with columns for each status, so I can drag and drop things. For this I will also need two states for issues, so I can have a backlog and a "sprint". For first iteration though I can probably just have a continuous work setup where all issues will show in the kanban.
It is a fun little thing to play around with, but I do not put it high on the priority list at the moment.
So it will be done, when it will be done.