Help us shape the future of Go! Take the 2026 Go Developer Survey

tjek

command module
v1.67.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2026 License: MIT Imports: 1 Imported by: 0

README

tjek

A keyboard-driven task manager for the terminal that tells you what to do next.

CI Go Platform License

tjek runs on Linux, macOS and Windows and keeps everything in a local file. It can sync between your machines through a small server you run yourself. No account, no cloud service.

What it does

  • Ranks your tasks. Deadline, priority, recent work, size and age decide the order, and a task that blocks something urgent rises with it. Press w to see why a task ranks where it does.
  • Holds the details. Due and start dates, priority, size, tags, projects, subtasks, dependencies, comments, descriptions and repeating tasks, and a history of who changed what.
  • Adds in one line. Buy milk #shopping due:friday p:high @home
  • Filters precisely. #bug,urgent -@home or overdue, saved as a context that stays on, and put away until later with wait:.
  • Moves over from Taskwarrior. task export | tjek import -
  • Shows the same tasks five ways: a list, a calendar with tracked time, projects with a timeline, tags, and a kanban board. Plus a stats page.
  • Tracks time. Start and stop a timer on a task with t.
  • Shares a project with other people through one file in a shared folder, a OneDrive for instance, with no server.
  • Syncs between computers, undoes every change, and has a command palette (ctrl+k) and a command line for scripting.
  • Speaks English, Danish and German, with themes and rebindable keys.

Every tab

Calendar: tracked time day by day, with a month beside it.

Tags: every tag with its open, overdue and next task, and the tasks under the selected one.

Projects: the same for projects, with a timeline of their dated tasks.

Board: tasks as cards, carried between columns.

Stats: workload, flow and a chart of what you finished.

Settings: theme, language, sync and export.

Install

macOS brew install iliorn/tap/tjek
Windows scoop install https://github.com/Iliorn/tjek/releases/latest/download/tjek.json
Linux / Windows binary Releases
Anywhere Go runs go install github.com/Iliorn/tjek@latest

tjek updates itself from Settings → "Update to latest release". docs/install.md covers building from source and verifying a download.

Getting started

Run tjek.

Key Action
a Add task
d Done
enter Details: comments, subtasks, dependencies, description
t Start/stop the timer
D Set the due date
/ Filter
f Focus on today and overdue
u Undo
tab / 1–7 Switch tab
? Every key
ctrl+k Find any action by name

#tag, @project, due:friday, p:high and s:l fill in a new task, and the same words filter: / then @work overdue shows your overdue work tasks. Dates can be today, tomorrow, monday, +3d, -2d, 15-06-25 and more.

Learn more

Contributing

CONTRIBUTING.md covers building and testing, and ARCHITECTURE.md how tjek is put together. Security issues go through SECURITY.md.

License

MIT

Documentation

Overview

Command tjek is a keyboard-driven terminal task manager. The app is in internal/app; this file is the entry point and the slot the build writes the version into.

Directories

Path Synopsis
Package hlc is a hybrid logical clock: the stamps a sync merge orders edits by.
Package hlc is a hybrid logical clock: the stamps a sync merge orders edits by.
internal
app
Package app is tjek: the TUI, the CLI verbs, storage and the sync glue, in one package split into files by concern (ARCHITECTURE.md).
Package app is tjek: the TUI, the CLI verbs, storage and the sync glue, in one package split into files by concern (ARCHITECTURE.md).
Package paths decides where tjek keeps its files.
Package paths decides where tjek keeps its files.
Package rank is the sequencing engine: the rule that decides the "Sequence" sort order and the value persisted in the todos.sequence column on every save.
Package rank is the sequencing engine: the rule that decides the "Sequence" sort order and the value persisted in the todos.sequence column on every save.
Package tasksync is tjek's cross-device sync engine: the pure merge fold (Merge), the wire protocol (Request/Response, PostSync), the HTTP endpoint (Server), the real-time change push (Hub, Listener), and conflict detection (DroppedLocalEdits).
Package tasksync is tjek's cross-device sync engine: the pure merge fold (Merge), the wire protocol (Request/Response, PostSync), the HTTP endpoint (Server), the real-time change push (Hub, Listener), and conflict detection (DroppedLocalEdits).
Package todo is tjek's framework-free domain layer: the Todo type and its mutations (toggle, tags, timers, subtasks, comments, time entries).
Package todo is tjek's framework-free domain layer: the Todo type and its mutations (toggle, tags, timers, subtasks, comments, time entries).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL