Technical documentation for GrowthProjects — a self-hosted project management app (workspaces, folders, lists, tasks, Kanban & time tracking) that runs inside WordPress. Covers how it works, the shortcode, custom post types, roles & capabilities, REST API, and the AI / MCP abilities.
Version: 1.0.0 | Requires: WordPress 6.0+, PHP 8.0+ | Text domain: growthprojects
1. Overview
GrowthProjects stores its data in native WordPress custom post types and exposes a single-page app (Kanban board, list view and time reports) rendered by a shortcode. Tasks live inside a hierarchy of Workspaces → Folders → Lists → Tasks, with tags, priorities, statuses, due dates, comments and a built-in time tracker. Everything is available three ways: the front-end app, the growthprojects/v1 REST API, and the WordPress Abilities API (optionally over MCP).
2. Installation & setup
- Activate the plugin. It registers the post types and grants capabilities, and runs its data migration on load.
- Create a WordPress page and add the shortcode
[growthprojects]. - Give the page a full-width template (the app is a full-screen SPA). Users must be logged in and have app access.
3. Shortcode
[growthprojects]Renders the project management app (mount node #gproj-app) with a sidebar tree, Kanban / list toggle, task side-panel and time reports. Access requires login and the gproj_access_app capability. Colors can be themed from the plugin’s Settings (theme presets or custom primary/hover colors).
4. Data model (custom post types)
| Post type | Represents |
|---|---|
gproj_workspace | Top-level workspace |
gproj_folder | Folder inside a workspace |
gproj_list | List (project) inside a folder |
gproj_task | Task (Kanban card) with status, priority, due date, comments and time entries |
Taxonomy: gproj_tag (task tags). Time entries and comments are attached to tasks.
5. Roles & capabilities
| Capability | Grants |
|---|---|
gproj_access_app | Open the app and see assigned work |
gproj_manage_tasks | Create / edit / assign / delete tasks |
gproj_manage_workspaces | Create / edit workspaces, folders and lists |
gproj_track_time | Start / stop timers and log time entries |
gproj_manage_time | Edit others’ time entries and view time reports |
Post-type capabilities (edit_gproj_items, publish_gproj_items, delete_gproj_items, edit_published_gproj_items) are also mapped for fine-grained control.
6. REST API
Namespace: growthprojects/v1 — base URL /wp-json/growthprojects/v1. Authentication is standard WordPress (logged-in cookie + X-WP-Nonce). Resource bases:
| Base | Purpose |
|---|---|
/workspaces | List / get / create / update / delete workspaces; nested /folders, /lists. |
/folders, /lists | Manage folders and lists; nested /tasks. |
/tasks | CRUD tasks; nested /{id}/comments and /{id}/time-entries; /reorder. |
/comments | Task comments. |
/timer | /start, /stop, /active — the running timer. |
/time-entries | Logged time; /{id} update / delete. |
/time-reports | Aggregated time reports; /export. |
/navigation | The full workspace → task navigation tree. |
/users | Assignable users. |
7. AI abilities & MCP
GrowthProjects registers a rich set of tools on the WordPress Abilities API, so an assistant can run the whole workflow. Highlights (~40 abilities):
- Workspaces / folders / lists:
list-workspaces,get-workspace,create-workspace,update-workspace,delete-workspace(and the same for folders and lists). - Tasks:
search-tasks,get-task,create-task,update-task,assign-task,set-task-status,set-task-priority,set-task-due-date,delete-task. - Comments:
list-task-comments,create-task-comment,delete-task-comment. - Time tracking:
start-timer,stop-timer,get-active-timer,log-time-entry,update-time-entry,delete-time-entry,list-task-time-entries,get-time-report. - Navigation:
get-navigation-tree.
All abilities are namespaced growthprojects/*, declare typed JSON schemas, and are capability-gated. Abilities flagged as MCP-public are exposed as callable MCP tools via the WordPress Abilities MCP adapter; destructive ones (e.g. delete-task) are excluded from the MCP surface by default. Required capability and MCP visibility are configurable per ability or per category in the plugin’s Abilities settings.
Back to GrowthProjects product page | All docs