Markdown & JSON Reference
Full schema reference for board editing
Genel Bakış
Her Kanban panosu, okuyabileceğiniz, yazabileceğiniz, kopyalayabileceğiniz ve sürüm kontrolünü yapabileceğiniz düz metinli bir Markdown belgesiyle desteklenir. Belgenin iki bölümü vardır: pano verilerini JSON olarak tutan, makine tarafından okunabilen Yapılandırılmış bir blok ve kişisel notlarınız için serbest biçimli bir Özel blok.
Daima önce kuru çalışma yapın
Uygula'ya tıklamadan önce düzenlemelerinizi doğrulamak için Prova düğmesini kullanın. Arka uç, panonuzu değiştirmeden hataları ve fark özetini rapor edecektir.
Belge Yapısı
Tam bir Kanban Markdown belgesi üç bölümden oluşur:
- İnsan tarafından okunabilen bir başlık (pano başlığı, nesil notu)
- Yapılandırılmış blok — HTML yorum işaretçileri arasındaki JSON verileri
- Özel blok — ücretsiz Markdown (notlar, Denizkızı diyagramları, bağlantılar)
# My Project Board
Generated by Kanban Markdown schema v1.
<!-- KANBAN:STRUCTURED:START -->
```kanban-structured
{
"version": 1,
"board": {
"id": "board-abc123",
"title": "My Project Board"
},
"columns": [
{ "id": "col-1", "title": "Backlog", "color": "#64748b", "order": 0 },
{ "id": "col-2", "title": "In Progress", "color": "#6366f1", "order": 1 },
{ "id": "col-3", "title": "Done", "color": "#10b981", "order": 2 }
],
"tasks": [
{
"id": "task-1",
"columnId": "col-2",
"position": 0,
"title": "Build authentication flow",
"description": "Implement JWT login, register, and token refresh.",
"priority": "high",
"tags": ["backend", "security"],
"assigneeIds": ["member-uuid-1"],
"mentionMemberIds": ["member-uuid-2"],
"estimatePoints": 5,
"dueDate": "2025-03-15",
"plannedStartAt": "2025-03-10",
"plannedEndAt": "2025-03-15",
"timeboxMinutes": 90,
"isCompleted": false,
"archivedAt": null,
"checklist": [
{ "title": "Design DB schema", "isDone": true },
{ "title": "Write unit tests", "isDone": false },
{ "title": "Deploy to staging", "isDone": false }
]
}
]
}
```
<!-- KANBAN:STRUCTURED:END -->
<!-- KANBAN:CUSTOM:START -->
## Team Notes
- Sprint ends Friday
- Backend review at 3 PM
```mermaid
flowchart LR
A[Backlog] --> B[In Progress] --> C[Done]
```
<!-- KANBAN:CUSTOM:END -->Yorum işaretleyicilerini kaldırmayın
<!-- KANBAN:STRUCTURED:START -->, <!-- KANBAN:STRUCTURED:END -->, <!-- KANBAN:CUSTOM:START --> ve <!-- KANBAN:CUSTOM:END --> işaretleri gereklidir. Bunları kaldırmak ayrıştırma hatasına neden olur.
Sütunlar
Sütunlar panonuzun iş akışı aşamalarını tanımlar. order değerlerine göre soldan sağa dönüştürülürler.
"columns": [
{ "id": "col-1", "title": "To Do", "color": "#64748b", "order": 0 },
{ "id": "col-2", "title": "In Progress", "color": "#6366f1", "order": 1 },
{ "id": "col-3", "title": "Review", "color": "#f59e0b", "order": 2 },
{ "id": "col-4", "title": "Done", "color": "#10b981", "order": 3 }
]| Field | Type | Required | Default | Description |
|---|---|---|---|---|
id | string | Yes | — | Benzersiz sütun tanımlayıcısı (UUID veya herhangi bir kararlı bilgi) |
title | string | Yes | — | Tahtada gösterilen sütun başlığı |
color | string | Yes | #64748b | Sütun vurgu rengi (altıgen). Kartlarda sol kenarlık olarak gösterilir |
order | integer | Yes | — | Sıfır tabanlı görüntüleme sırası (artan, soldan sağa) |
Note
Sütun kimlikleri pano içinde benzersiz olmalıdır. Görevler bu id sütunlarına referans verir.
Görevler
Görevler işin temel birimidir. Her görev bir sütunun içinde bulunur (columnId aracılığıyla) ve o sütun içinde position'e göre sıralanır.
Asgari görev
{
"id": "task-abc",
"columnId": "col-1",
"position": 0,
"title": "Write release notes",
"description": "",
"priority": "medium",
"tags": [],
"assigneeIds": [],
"mentionMemberIds": [],
"estimatePoints": null,
"dueDate": null,
"plannedStartAt": null,
"plannedEndAt": null,
"timeboxMinutes": null,
"isCompleted": false,
"archivedAt": null,
"checklist": []
}Tüm alanlarla tam görev
{
"id": "task-xyz",
"columnId": "col-2",
"position": 0,
"title": "Redesign checkout page",
"description": "Full UX overhaul based on user research findings.",
"priority": "critical",
"tags": ["ux", "frontend", "q1-goal"],
"assigneeIds": ["member-alice", "member-bob"],
"mentionMemberIds": ["member-pm"],
"estimatePoints": 8,
"dueDate": "2025-04-01",
"plannedStartAt": "2025-03-20",
"plannedEndAt": "2025-04-01",
"timeboxMinutes": 120,
"isCompleted": false,
"archivedAt": null,
"checklist": [
{ "title": "User interviews", "isDone": true },
{ "title": "Wireframes approved", "isDone": true },
{ "title": "Implement components", "isDone": false },
{ "title": "A/B test live", "isDone": false }
]
}| Field | Type | Required | Default | Description |
|---|---|---|---|---|
id | string | Yes | — | Benzersiz görev tanımlayıcı (UUID veya kararlı bilgi) |
columnId | string | Yes | — | Bu görevin ait olduğu sütunun kimliği |
position | integer | Yes | — | Sütun içindeki sıfır tabanlı sıralama düzeni |
title | string | Yes | — | Görev başlığı (1-280 karakter) |
description | string | No | "" | Markdown uyumlu daha uzun açıklama |
priority | enum "low""medium""high""critical" | No | medium | Görev aciliyet düzeyi |
tags | string[] | No | [] | Filtreleme ve gruplandırma için serbest biçimli etiket dizeleri |
assigneeIds | string[] | No | [] | Bu göreve atanan kişilerin üye kimlikleri |
mentionMemberIds | string[] | No | [] | Bu görevde bahsedilen (bildirilen) üye kimlikleri |
estimatePoints | integer|null | No | null | Hikaye noktası tahmini (Fibonacci: 1, 2, 3, 5, 8, 13…) |
dueDate | string|null | No | null | ISO 8601 tarih dizisi: YYYY-AA-GG |
plannedStartAt | string|null | No | null | ISO 8601 tarihsaat: planlanan başlangıç |
plannedEndAt | string|null | No | null | ISO 8601 tarihsaat: planlanan bitiş |
timeboxMinutes | integer|null | No | null | Zaman boksu için odaklanma oturumu uzunluğu |
isCompleted | boolean | No | false | Görevi tamamlandı olarak işaretler (kullanıcı arayüzüne üstü çizili ekler) |
archivedAt | string|null | No | null | ISO 8601 tarihsaat görevin arşivlendiği tarih. Arşivlenen görevler panoda gizlenir |
checklist | object[] | No | [] | Alt görev kontrol listesi öğeleri (Kontrol Listesi bölümüne bakın) |
Kontrol Listesi Öğeleri
Her görev, ayrı görevler oluşturmadan ayrı ayrı tamamlandı olarak işaretlenebilen hafif alt görevler olan düz bir kontrol listesi öğeleri listesini destekler.
"checklist": [
{ "title": "Design mockup", "isDone": true },
{ "title": "Code review", "isDone": false },
{ "title": "Deploy to prod", "isDone": false }
]| Field | Type | Required | Default | Description |
|---|---|---|---|---|
title | string | Yes | — | Kontrol listesi öğesi etiketi (1-255 karakter) |
isDone | boolean | Yes | — | Bu öğenin işaretlenip işaretlenmediği |
Özel Notlar Bölümü
<!-- KANBAN:CUSTOM:START --> ve <!-- KANBAN:CUSTOM:END --> arasındaki her şey sizin karalama defterinizdir. Tam Markdown ve Mermaid diyagramlarını destekler. İçerik, pano motoru tarafından hiçbir zaman ayrıştırılmaz; yalnızca Önizleme sekmesinde gösterilir.
<!-- KANBAN:CUSTOM:START -->
## Sprint Notes
- Daily standup at 10:00 AM
- Backend API freeze on Friday
```mermaid
gantt
title Sprint 12
section Tasks
Auth flow :done, 2025-03-10, 3d
Dashboard UI :active, 2025-03-13, 4d
API docs :2025-03-17, 2d
```
> Reminder: update JIRA tickets before end of day.
<!-- KANBAN:CUSTOM:END -->Tip
Sprint notları, takım bağlantıları, Gantt şemaları, mimari diyagramları ve pano verilerinizin yanında görünmesini istediğiniz her şey için Özel bölümünü kullanın.
Öncelik Değerleri
priority alanı dört değerden tam olarak birini kabul eder. Her biri kullanıcı arayüzünde farklı bir rozet rengiyle eşleşir:
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
low | enum value | No | — | Düşük aciliyet. Arduvaz/gri renkte gösterilmiştir. |
medium | enum value | No | — | Varsayılan. Kehribar/sarı renkte gösterilir. Bunun için öncelik varsayılanlarını atlamak. |
high | enum value | No | — | Önemli. Turuncu renkte gösterilmiştir. |
critical | enum value | No | — | Engelleme. Kırmızı/gül rengiyle gösterilmiştir. |
Arşivleme Görevleri
Bir görevi arşivlemek için archivedAt alanını bir ISO tarihsaat dizesine ayarlayın. Arşivlenen görevler aktif pano görünümünün dışında bırakılır ancak geçmişte korunur.
{
"id": "task-old",
"columnId": "col-1",
"position": 99,
"title": "Old completed task",
"archivedAt": "2025-01-10T14:30:00.000Z",
...
}Note
archivedAt öğesini null değerine ayarlamak, görevi arşivden çıkarır. Fark özeti, panoda o anda etkin olan görevleri arşivleyen bir işaretleme anlık görüntüsü uygulandığında, TaskToArchive'ı gösterecektir.
Deneme ve Teşhis
Kuru Çalıştırma özelliği, değişiklikleri uygulamadan işaretlemenizi doğrular. Arka uç, bir diffSummary (ne değişir) ve herhangi bir hata veya uyarıyı listeleyen bir diagnostics dizisi döndürür.
Başarılı deneme yanıtı
{
"ok": true,
"dryRun": true,
"diagnostics": [],
"diffSummary": {
"columnsCreated": 1,
"columnsTouched": 2,
"tasksCreated": 3,
"tasksTouched": 5,
"tasksToArchive": 0
}
}Hatalı prova
{
"ok": false,
"dryRun": true,
"diagnostics": [
{
"code": "unknown_column_id",
"message": "Task 'task-xyz' references unknown column 'col-999'.",
"line": 42,
"severity": "error"
},
{
"code": "duplicate_task_id",
"message": "Task ID 'task-abc' is used more than once.",
"line": 67,
"severity": "error"
}
],
"diffSummary": {
"columnsCreated": 0,
"columnsTouched": 0,
"tasksCreated": 0,
"tasksTouched": 0,
"tasksToArchive": 0
}
}| Field | Type | Required | Default | Description |
|---|---|---|---|---|
code | string | Yes | — | Makine tarafından okunabilen hata kodu (ör. bilinmeyen_sütun_kimliği) |
message | string | Yes | — | Sorunun insanlar tarafından okunabilir açıklaması |
line | integer | Yes | — | Fiyatlandırma belgesindeki yaklaşık satır numarası |
severity | enum "error""warning" | Yes | — | Ya 'hata' (engellemeler uygulanır) ya da 'uyarı' (gelirlerin uygulanması) |
Hatalar Uygula'yı engelledi
Tanılamada "hata" önem derecesine sahip herhangi bir öğe bulunursa, Uygula işlemi devam etmeyi reddeder. Uyarılar tavsiye niteliğindedir ve engellemez.
Önerilen İş Akışı
Markdown aracılığıyla panoyu düzenlerken bu akışı izleyin:
- Panonuzda Markdown panelini açın
- Yapılandırılmış blok'ta JSON'u düzenleyin — sütunları veya görevleri ekleyin/değiştirin
- Hiçbir şeyi değiştirmeden doğrulamak için Kuru çalıştırma'yı tıklayın
- Tanılama listesinde gösterilen hataları düzeltin
- Değişiklikleri canlı panoya uygulamak için Uygula'yı tıklayın
- Yerel bir
.mdyedeğini kaydetmek için İndir'i kullanın
Sürüm kontrol ipucu
Belge düz metin olduğundan, onu bir Git deposuna yapıştırabilir, farklı sürümler oluşturabilir ve eski bir anlık görüntüyü yeniden uygulayarak önceki pano durumlarını geri yükleyebilirsiniz.