The Inbox is for what is not worth sorting in the moment: “half a tub of ice cream from the shop”, typed in passing, to become a Diet entry later. It is a trackable of free text that every profile has, logged and read like any text trackable, so nothing about it needs a separate store or page of its own.
Built in
The Inbox has the same id in every profile, 00000000-0000-7000-8000-000000000001 (INBOX_ID in packages/core/src/inbox.ts), so two devices that each make one sync as one row. It is made when a profile opens (ensureInbox, an insert that does nothing if it exists), so the navigation can open it before anything has gone in. It can be renamed, but the repository refuses to delete it or to make it anything but text, and its edit page offers neither; its form shows no fields. It is not counted as a trackable someone made, so a profile holding only the Inbox still counts as new (ownTrackables).
Into it
- From the command palette, text that matches no trackable is offered as Add ”…” to the Inbox, on Enter or a tap, at the app’s moment, with Undo.
- From its own page, which the navigation’s Inbox opens with its count: the Inbox trackable’s page, opening on its table, since words have no chart, with the page’s Log button opening the entry panel’s text box.
Out of it
An Inbox entry opened in the entry panel offers Move to… (Entry Panel): choosing a trackable turns the same panel into that trackable’s new entry, at the time the words were written, with the words as its note. Logging it takes the words out of the Inbox, with Undo, and Back leaves them where they were. It offers every trackable you log that has a value of its own besides words, so not a text trackable.