summaryrefslogtreecommitdiff
path: root/doc/search.markdown
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2015-08-29 20:00:53 -0400
committerFrederic Guillot <fred@kanboard.net>2015-08-29 20:00:53 -0400
commit6c711f696f73bc59813f6834ec241aef3b626cbd (patch)
treeded4f0e8c7f8c672414ff3f2f84eac0f6d9073e5 /doc/search.markdown
parentef087f5e22df1a0d97babef26aaf9b8960ee6d5d (diff)
Include documentation in the application
Diffstat (limited to 'doc/search.markdown')
-rw-r--r--doc/search.markdown138
1 files changed, 138 insertions, 0 deletions
diff --git a/doc/search.markdown b/doc/search.markdown
new file mode 100644
index 00000000..34a20bc6
--- /dev/null
+++ b/doc/search.markdown
@@ -0,0 +1,138 @@
+Advanced Search Syntax
+======================
+
+Kanboard use a simple query language for advanced search.
+
+Example of query
+----------------
+
+This example will returns all tasks assigned to me with a due date for tomorrow and a title that contains "my title":
+
+```
+assigne:me due:tomorrow my title
+```
+
+Search by task id or title
+--------------------------
+
+- Search by task id: `#123`
+- Search by task id and task title: `123`
+- Search by task title: anything that don't match any search attributes
+
+Search by status
+----------------
+
+Attribute: **status**
+
+- Query to find open tasks: `status:open`
+- Query to find closed tasks: `status:closed`
+
+Search by assignee
+------------------
+
+Attribute: **assignee**
+
+- Query with the full name: `assignee:"Frederic Guillot"`
+- Query with the username: `assignee:fguillot`
+- Multiple assignee lookup: `assignee:user1 assignee:"John Doe"`
+- Query for unassigned tasks: `assignee:nobody`
+- Query for my assigned tasks: `assignee:me`
+
+Note: Kanboard will also search in assigned subtasks with the status todo and in progress.
+
+Search by color
+---------------
+
+Attribute: **color**
+
+- Query to search by color id: `color:blue`
+- Query to search by color name: `color:"Deep Orange"`
+
+Search by due date
+------------------
+
+Attribute: **due**
+
+- Search tasks due today: `due:today`
+- Search tasks due tomorrow: `due:tomorrow`
+- Search tasks due yesterday: `due:yesterday`
+- Search tasks due with the exact date: `due:2015-06-29`
+
+The date must use the ISO8601 format: **YYYY-MM-DD**.
+
+All string formats supported by the `strtotime()` function are supported, by example `next Thursday`, `-2 days`, `+2 months`, `tomorrow`, etc...
+
+Operators supported with a date:
+
+- Greater than: **due:>2015-06-29**
+- Lower than: **due:<2015-06-29**
+- Greater than or equal: **due:>=2015-06-29**
+- Lower than or equal: **due:<=2015-06-29**
+
+Search by modification date
+---------------------------
+
+Attribute: **modified** or **updated**
+
+The date formats are the same as the due date.
+
+There is also a filter by recently modified tasks: `modified:recently`.
+
+This query will use the same value as the board highlight period configured in settings.
+
+Search by creation date
+-----------------------
+
+Attribute: **created**
+
+Works in the same way as the modification date queries.
+
+Search by description
+---------------------
+
+Attribute: **description**
+
+Example: `description:"text search"`
+
+Search by external reference
+----------------------------
+
+The task reference is an external id of your task, by example a ticket number from another software.
+
+- Find tasks with a reference: `ref:1234` or `reference:TICKET-1234`
+
+Search by category
+------------------
+
+Attribute: **category**
+
+- Find tasks with a specific category: `category:"Feature Request"`
+- Find all tasks that have those categories: `category:"Bug" category:"Improvements"`
+- Find tasks with no category assigned: `category:none`
+
+Search by project
+-----------------
+
+Attribute: **project**
+
+- Find tasks by project name: `project:"My project name"`
+- Find tasks by project id: `project:23`
+- Find tasks for several projects: `project:"My project A" project:"My project B"`
+
+Search by column
+----------------
+
+Attribute: **column**
+
+- Find tasks by column name: `column:"Work in progress"`
+- Find tasks for several columns: `column:"Backlog" column:ready`
+
+Search by swimlane
+------------------
+
+Attribute: **swimlane**
+
+- Find tasks by swimlane: `swimlane:"Version 42"`
+- Find tasks in the default swimlane: `swimlane:default`
+- Find tasks into several swimlanes: `swimlane:"Version 1.2" swimlane:"Version 1.3"`
+