Skip to content
mago edited this page Jan 29, 2022 · 3 revisions

Godot Project Management Plugin

What?

Godot Project Manager is a multi-party Kanban project management plugin for Godot created during the 'Godot Add-on Jam #1'.

For whom it is interesting?

  • For all those annoyed by lazy developers who don't feel like updating the project board
  • For all those who want their developers to have no distraction by using a web browser
  • For all those solo devs, jammers, and all other

What it's good for?

  • Create tasks and track the progress
  • Add members and assign tasks
  • Filter your tasks
  • Configure the amount and name of your swimlanes
  • TODO Dock Window to list your TODOs
  • Jump to source from the TODO Dock
  • Create new tasks from TODOs
  • All tasks are JSON files

Installation

  1. Get the zip
  2. Create a 'addons' folder within your project, if needed
  3. Put the 'NbPM' folder in the addons folder
  4. Project -> Project Settings -> Plugins -> Enable
  5. Open the 'ProjectManagement' screen
  6. Opening the PM for the first time will let you set up the project config
  7. After saving, you will have to select the user
  8. Commit everything to Git if needed

Soon to be available on the Godot asset store.

Usage

Tasks can be created by either the '+' button on the swimlanes or created from the TODO dock window. The created task will be represented in the swimlane according to the chosen category.

Tasks could be dragged between the different swimlanes or the progress could be tracked by changing the category in the task view window. In the project settings, you can add additional users.

Each user can set his user in the user settings. If the user is set, you can filter to view only tasks that are assigned to you or all.

Every task is stored in its own file in a human-readable JSON format. It is designed to be used with Git and diff tools. The project config contains the Kanban configurations, the TODO filters, and the actual linkage between TODOs and tasks.

The user config contains besides the selected user id the TODO database. As the user config is different for every user it's excluded in the generated gitignore file.

Limitations And Best Practices

A known limitation is a weak linkage between TODOs and tasks. Linking is done by storing the tasks file name, the todo text, and the source file path. It cannot be efficiently mapped to a specific line number, as the number of updates to the project file would be an overkill to diff. Therefore if you change the todo in the source code, the linkage is broken.

Best practise for this is to use multiple lines to comment a todo:

# TODO: Check parameters
#  Add parameter consistency checks ...

Issues

If you have found an issue, feel free to report it here.

Contribution

If you dig into the code, you will notice that this plugin was created during a game jam. So if you have any contributions to make, feel free to do so. At best, you can join our Discord before you start coding or triggering a pull request.

Clone this wiki locally