====== Kanboard ======
Herramienta para la gestión de proyectos basado en la metodología Kanban.
* [[https://kanboard.org/|Web oficial]]
* [[https://docs.kanboard.org/en/latest/index.html|Documentación oficial]]
* [[https://github.com/kanboard/kanboard|Repositorio de código oficial]] (GitHub)
{{ https://kanboard.org/assets/img/board.png |}}
===== Instalación =====
==== Docker ====
Ejemplo de ''docker-compose.yml'' utilizando [[informatica:sistemas_operativos:virtualizacion:docker:docker_compose|Docker Compose]]:
version: '3.5'
services:
kanboard:
container_name: kanboard
image: kanboard/kanboard
volumes:
- ./data:/var/www/app/data
- ./plugins:/var/www/app/plugins
environment:
- DATABASE_URL=mysql://kanboard_user:kanboard_password@database_server/kanboard_database
restart: unless-stopped
* ''/data'': datos de la aplicación (ficheros adjuntos, base de datos Sqlite, etc)
* ''/plugins'': plugins de Kanboard
* ''DATABASE_URL'': en caso de usar MySQL/MariaDB, la conexión con la base de datos que usará Kanboard.
El credenciales por defecto son:
* Usuario: ''admin''
* Contraseña: ''admin''
===== API =====
Utilizando cURL:
curl -u "usuario:contraseña" -d '{"jsonrpc": "2.0", "method": "getMyOverdueTasks", "id": 1718627783}' https://mikanboard.com/jsonrpc.php
* ''method'': indica el método a utilizar.
* ''id'': es un identificador al azar. Es necesario utilizarlo o la API no devolverá nada.
Si queremos obtener todos nuestros proyectos:
curl -u "usuario:contraseña" -d '{"jsonrpc": "2.0", "method": "getMyProjectsList", "id": 1718627783}' https://mikanboard.com/jsonrpc.php
Ejemplo de respuesta:
{
"jsonrpc":"2.0",
"result": {
"13":"Casa",
"17":"IT",
"9":"Learning",
"8":"Tareas casa",
"19":"VPS",
"18":"Work",
"12":"tempwin.net"
},
"id":1718627783
}
==== Tareas ====
Obtener información de una tarea por su identificador:
curl -u "usuario:contraseña" -d '{"jsonrpc": "2.0", "method": "getTask", "id": 1718627783, "params":{"task_id":116}}' https://mikanboard.com/jsonrpc.php
Ejemplo de salida:
{
"jsonrpc": "2.0",
"result": {
"id": "116",
"title": "Cambiar domiciliación impuesto circulación coche",
"description": "El impuesto se llama **IVTM**: Impuesto sobre Vehículos de Tracción Mecánica",
"date_creation": "1612271756",
"date_completed": null,
"date_due": "1614639600",
"color_id": "yellow",
"project_id": "13",
"column_id": "42",
"owner_id": "4",
"position": "1",
"score": "0",
"is_active": "1",
"category_id": "0",
"creator_id": "3",
"date_modification": "1612271967",
"reference": "",
"date_started": "1612271700",
"time_spent": "0",
"time_estimated": "0",
"swimlane_id": "13",
"date_moved": "1612271756",
"recurrence_status": "0",
"recurrence_trigger": "0",
"recurrence_factor": "0",
"recurrence_timeframe": "0",
"recurrence_basedate": "0",
"recurrence_parent": null,
"recurrence_child": null,
"priority": "0",
"external_provider": null,
"external_uri": null,
"url": "https://mikanboard.com/?controller=TaskViewController&action=show&task_id=116&project_id=13",
"color": {
"name": "Yellow",
"background": "rgb(245, 247, 196)",
"border": "rgb(223, 227, 45)"
}
},
"id": 1718627783
}
Obtener tareas atrasadas de un proyecto:
curl -u "usuario:contraseña" -d '{"jsonrpc": "2.0", "method": "getOverdueTasksByProject", "id": 1718627783, "params":{"project_id":1}}' https://mikanboard.com/jsonrpc.php
Salida:
{
"jsonrpc": "2.0",
"result": [
{
"id": "93",
"title": "Modificar número de cuenta impuesto circulación",
"date_due": "1606777200",
"project_id": "1",
"creator_id": "3",
"owner_id": "3",
"project_name": "Mudanza - Domiciliaciones, pagos",
"assignee_username": "TempWin",
"assignee_name": "TempWin"
}
],
"id": 1718627783
}
===== Búsquedas =====
* [[https://docs.kanboard.org/v1/user/search/|Documentación sobre búsqueda avanzada]]
==== Por etiqueta (tag) ====
tag:"Mi etiqueta"
==== Por fecha objetivo / límite ====
Si queremos filtrar las tareas que tengan una fecha límite / objetivo:
due:today
Mostrará las tareas cuya fecha límite se cumple hoy.
due:
Mostrará las tareas fuera de plazo.