← Back to templates
Project Tracker
engineeringManage projects, tasks, and milestones with status tracking.
Collections
Projects
High-level projects and initiatives
Schema Fields
name:stringstatus:stringowner:stringstart_date:stringtarget_date:stringdescription:string
Tasks
Individual work items
Schema Fields
title:stringstatus:stringpriority:stringassignee:stringdue_date:stringestimate_hours:number
Milestones
Key project milestones and deadlines
Schema Fields
name:stringdue_date:stringstatus:stringdescription:string
Relationships
tasks
belongs_to
projectsTask belongs to projecttasks
blocks
tasksTask blocks another taskprojects
has_milestone
milestonesProject has milestoneQuick Start
Create the collections using the Rekor CLI:
rekor collections upsert projects --workspace my-tracker --schema @projects.jsonFull Schema (JSON)
Copy the complete template definition:
{
"collections": [
{
"id": "projects",
"name": "Projects",
"description": "High-level projects and initiatives",
"icon": "folder",
"color": "#3b82f6",
"json_schema": {
"type": "object",
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"planning",
"active",
"paused",
"completed",
"cancelled"
]
},
"owner": {
"type": "string"
},
"start_date": {
"type": "string",
"format": "date"
},
"target_date": {
"type": "string",
"format": "date"
},
"description": {
"type": "string"
}
}
}
},
{
"id": "tasks",
"name": "Tasks",
"description": "Individual work items",
"icon": "check-square",
"color": "#22c55e",
"json_schema": {
"type": "object",
"required": [
"title",
"status"
],
"properties": {
"title": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"todo",
"in_progress",
"review",
"done"
]
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"assignee": {
"type": "string"
},
"due_date": {
"type": "string",
"format": "date"
},
"estimate_hours": {
"type": "number"
}
}
}
},
{
"id": "milestones",
"name": "Milestones",
"description": "Key project milestones and deadlines",
"icon": "flag",
"color": "#f59e0b",
"json_schema": {
"type": "object",
"required": [
"name",
"due_date"
],
"properties": {
"name": {
"type": "string"
},
"due_date": {
"type": "string",
"format": "date"
},
"status": {
"type": "string",
"enum": [
"upcoming",
"reached",
"missed"
]
},
"description": {
"type": "string"
}
}
}
}
],
"relationships": [
{
"type": "belongs_to",
"source": "tasks",
"target": "projects",
"description": "Task belongs to project"
},
{
"type": "blocks",
"source": "tasks",
"target": "tasks",
"description": "Task blocks another task"
},
{
"type": "has_milestone",
"source": "projects",
"target": "milestones",
"description": "Project has milestone"
}
]
}