TaskJunkyDocs

Data Types

The TaskJunky data model — Task, Project, List, Rule, Activity, and enums.

All data is stored in Neon Postgres via Drizzle ORM. Fields marked with * are required. Fields ending with ? are nullable.

Hierarchy

ProjectList (parentListId = sublist) → Task (parentTaskId = subtask)

  • Global Inbox has no project (uncategorized)
  • Lists can exist without a project
  • Tasks can live at any level

Task

FieldTypeDescription
id *uuidUnique identifier
title *stringTask title
descriptionstring?Task description
status *enumtodo | in_progress | done
priority *enumlow | medium | high | urgent
userId *stringOwner user ID
listIduuid?Parent list ID
parentTaskIduuid?Parent task ID (for subtasks)
position *numberSort position within list
assigneeenum?user | claude
sourceenum?mcp | web | ios | api | github
notesstring?User/AI editable notes
aiNotesstring?Append-only progress notes from AI (via add_note)
planstring?Game plan, spec, or checklist (markdown)
dueDatetimestamp?Due date
completedAttimestamp?When task was completed
githubIssueNumbernumber?Linked GitHub issue
githubPrNumbernumber?Linked GitHub PR
createdAt *timestampCreation time
updatedAt *timestampLast update time

Project

FieldTypeDescription
id *uuidUnique identifier
name *stringProject name
descriptionstring?Project description
iconstring?Emoji icon
colorstring?Hex color
userId *stringOwner user ID
githubOwner *stringGitHub repo owner
githubRepo *stringGitHub repo name
githubRepoIdnumber?GitHub repo ID
isArchived *booleanWhether archived
createdAt *timestampCreation time

List

FieldTypeDescription
id *uuidUnique identifier
name *stringList name
descriptionstring?List description
iconstring?Emoji icon
colorstring?Hex color
userId *stringOwner user ID
projectIduuid?Parent project
parentListIduuid?Parent list (for sublists)
isDefault *booleanIs this the Inbox
isArchived *booleanWhether archived
createdAt *timestampCreation time

Rule

FieldTypeDescription
id *uuidUnique identifier
content *stringRule instruction text
isActive *booleanWhether enabled
priority *numberSort order (higher = first)
userId *stringOwner user ID
createdAt *timestampCreation time

Activity

FieldTypeDescription
id *uuidUnique identifier
taskIduuid?Related task
listIduuid?Related list
projectIduuid?Related project
actor *enumuser | claude
action *enumcreated | updated | completed | deleted | moved | commented | linked
metadatajsonb?Extra data (status changes, file paths, etc.)
createdAt *timestampWhen it happened

Enums

EnumValues
task_statustodo, in_progress, done
task_prioritylow, medium, high, urgent
task_sourcemcp, web, ios, api, github
task_assigneeuser, claude
activity_actioncreated, updated, completed, deleted, moved, commented, linked
activity_actoruser, claude

On this page