I have written about Cockpit twice - why it exists and how it was built - and never about what it actually does. Since August it has grown from a fork of the Agenda plugin into the panel I run Joplin from, so here it is, as of version 2.8.
Joplin keeps to-dos and notes in notebooks, and a to-do with a due date is still a note in a folder. To see what is due today, you search or you scroll. I wanted the opposite: one list of everything, in the order it is due, and the notebooks out of the way.
Cockpit is a single panel that replaces the notes and notebooks sidebars. It gathers every to-do, every note and the checkboxes inside them into one view grouped by due date: Overdue, Today, Tomorrow, This Week, This Month, This Year, Future, No Due Date, and Notes. Each row carries its notebook as a pill, and the circle on the row doubles as a ring showing how many of the note’s checkboxes are ticked. Click the circle to complete a to-do, click the row to open it.
Four other views: one heading per calendar day, a plain roll-up with no grouping, a month calendar with a dot per to-do, and a week planner with a card per to-do. A profile saves the whole thing - the view, the filters, the search, the sorting, which completed to-dos still count - so switching profiles switches the panel in one step.
Rescheduling is a drag: drop a to-do onto a day, onto a week-planner column or onto a group heading, and it moves there. For an exact time there is the picker - a calendar, the time columns, and two rows of quick buttons: Today, Tomorrow, Weekends, Next Monday, then +hour, +day, +week, +month. Select three to-dos and it moves all three, each keeping its own time or all to the same one.
The search field takes anything Joplin’s search takes, with autocomplete for tag:, notebook: and title:. Right-click a row for Cockpit’s own menu - switch type, tags, move, duplicate, copy a Markdown link, delete - and with several rows selected every entry says how many it will act on. Notebooks you exclude in the settings disappear from Cockpit entirely: rows, search, counts. My Archive was the first.
The same file runs on Android. There the panel is a tab in Joplin’s plugin screen, every picker is drawn inside the panel as a touch overlay, a half-second hold stands in for the right-click, and keeping the finger down drags.
Cockpit also works with its two siblings. A click on the Whereabouts chip under the note title points the panel at that notebook. And with Jot installed, a right-click on New note or New to-do opens Jot’s capture form with the panel’s notebook filled in, and Quick edit… in the row menu changes a row’s title, type, notebook, tags and due date without opening the note. Neither plugin needs the other.
The part I find interesting: Joplin syncs notes and never plugin settings, so a panel like this had to be set up again on every device. Cockpit can keep its profiles, theme and excluded notebooks in a Joplin note instead. Type the note’s title into one settings field on each device and they travel with everything else; the note holds JSON, the last device to write wins, and Cockpit never writes a note it has not managed to read first.
Joplin 2.9 or newer on desktop, 3.3 or newer on Android. Multi-selection, custom panel CSS and the calls to Jot are desktop only.
Free and open source under MIT, forked from the Agenda plugin by BeatLink and TheScriptingGuy: github.com/pmslava/joplin-plugin-cockpit. It is in Joplin’s plugin list - Tools → Options → Plugins, search Cockpit - and the requests that shape it come from its thread on the Joplin forum.