Concepts
Notes, blocks, types, properties, collections and links — the six ideas everything else is built from.
Notes and blocks
A note is a page. It is the unit of permission, of publishing, of search scope, and of the collaborative document underneath.
A block is one paragraph, heading, list item, table row or code fence. Each has a ULID minted when it is created, and that ULID survives splitting a block, joining two, pasting, and sending an exported or pulled file back into its note with fp push. Importing an export through the Import dialog creates new notes, whose blocks get new ULIDs. Everything durable points at a block: comment anchors, agent citations, the {#blockId} in your exported Markdown, and the chunks search returns.
Types are tags, and tags are classes
Applying #Person to a note does two things: it gives the note that type’s properties, and it makes the note a member of a collection you can query. A type can extend others, so #Audiobook can be a #Book and a #MediaObject at once.
This is not Notion’s model. Notion makes you choose a database before you write. Fastpad lets you write first and classify later, including in bulk and including long after the fact.
| Property type | Holds |
|---|---|
text, number, url | scalars |
date, datetime | points in time; sortable and filterable |
checkbox | a boolean |
select, multi_select | one or many of a defined option set |
person | a member of the workspace |
relation | another note, constrained to a type |
file | an uploaded attachment |
Two types can define the same property name without colliding: Person.email and Contact.email are different properties on the same note.
Collections
A collection is a saved view over a type: filters, sorts, grouping and a layout. Six layouts — table, board, list, gallery, calendar and timeline — over rows that already existed as notes.
A view embedded in a note and a view opened from the sidebar are the same object. An embedded collection stores the view, never the rows, because a collection is a saved question and rows in a block would be a stale copy of the answer.
Links and the graph
Typing [[ or @ creates a typed edge, not a piece of text that happens to look like a link. Every note shows its backlinks, and edges carry evidence — which is why a link can answer “why is this connected?” rather than only “that it is”.
Some edges are asserted by you and some are inferred by the system. Inferred edges decay; asserted ones do not. Promoting an inferred edge is one gesture, and until you make it, no agent search will walk that edge to reach content through it.
Trash, archive and delete
| Action | What happens | Reversible |
|---|---|---|
| Archive | The note stays open, linkable, greppable and exportable. It drops out of search results. | yes |
| Move to trash | The note leaves the sidebar. Its blocks, history and links all stay. | yes, from the trash |
| Purge | The rows are removed after the retention window. | no |
Archiving is something a person does, never something a model decides. Lost notes are the single largest source of one-star reviews in this category, which is why restore was built before hard delete was.