All guides

Contexts

Build your own hierarchy to segment work the way your team thinks about it — the same flexible, Airtable-style structure (Context → Layer → Item) that workspaces and projects themselves are built on.

Navigation update. The app now splits this into two surfaces: - Contexts (the work plane at /dashboard/contexts) — where you do the work: open a context as a board, tree or grid of its items and elements, drill through layers, drag-and-drop, multi-select, pin and resolve. You reach it from the context switcher in the header (the pill next to the team name) or the Open board button on a context card on Home. - Structures (/dashboard/structures) — where you shape the data structure: rename/reorder a context's layers and open managers for Properties, Elements, Views, Rates, Assignees and Log time. See the Setting up a structure guide. The rest of this guide explains the underlying Context → Layer → Item → Element model (shared by both surfaces).

Working in a context (the work plane)

  1. Click the context switcher in the header (the pill showing the active context's colour dot + name) and pick a

context — or click Open board on a context card on Home. The context opens as a board.

  1. Board — the current layer forms the columns and the next layer down forms the cards inside them.

Structure cards (items) are faint; work cards (elements/records) are solid with a status dot, name, ref, due date, assignee avatar and post count. Click an item card to drill one layer deeper (a breadcrumb and a left rail track where you are); click an element card to open its detail pane.

  1. Add as you go: each element column has a dashed + Add record; non-leaf columns have + Add {layer}; the

end of the board has an + Add {column layer} lane.

  1. Resolve / pin / reorder — drag cards to reorder within a column or move them to a sibling column at the same

level; resolved records sort to the bottom under a Show resolved toggle (and can't be dragged). Open an element to Resolve, set Priority/Assignee/Due or Pin it. Tick the checkboxes to multi-select and use the floating action bar (Resolve · Pin · Delete) — selection stays within one level.

  1. Switch the view with the Board / Tree / Grid / Records toggle (top-right). Tree is the whole context

indented (collapse rows, the same selection + drag-drop); Grid is a flat table of every record; Records points to your saved views (build them in Structures → Views).

Who can do what: everyone can browse a context and resolve a task assigned to them. Owners/admins make the structural changes (add/move/delete items, set priority/assignee/due, pin, drag-reorder).

What it does

A context is a labelled bucket you define yourself to group and segment work. Contexts form a hierarchy: a context with no parent is a master context (the top of a branch), and you can nest sub-contexts beneath it as deep as you like — for example Clients → Acme → Q1 2026.

Each context can also hold layers — the template structure inside that context. Layers form their own hierarchy (a layer with no parent is a master layer, with sub-layers nested beneath), and each context has its own independent set of layers.

You then populate that template with items. An item is a real node that fills a layer — for example, in a Workspace → Project → Task list structure the items might be Connextar (a Workspace), PM Tool (a Project under it) and Backlog (a Task list under that). Items mirror the layer structure: a top-level item fills a master layer, and a nested item fills a layer one step down, always sitting under a parent item. Each item gets a short abbreviation (filled in automatically from its name if you leave it blank, and kept unique within the context) and an optional icon.

A context can also define properties — its schema. Each property has a value type (Text, Number, Date, Yes/No, Select or Person) and a role (Field, Data or Filter), so you describe what information a context holds.

A context holds elements — its content. Each element has a type (Record, Content or Emoji) and holds a value for each of the context's properties, so an element is a row of data shaped by the context's schema.

Finally, a context can have viewsbespoke layouts that display its elements as a grid (a table of elements × properties), a kanban board (columns grouped by a property) or a list.

Together — contexts, layers, properties, elements and views — make up Threadwork's flexible, Airtable-style meta-model: owners and admins shape a structure and its schema, fill in content, and choose how to view it.

Contexts and layers are shared across your whole team (everyone in the organisation sees the same structure).

Where to find it

  • Work in a context: the context switcher in the header → pick a context (or Open board on a Home context

card). URL: /dashboard/contexts.

  • Shape a context's structure: Structures in the top navigation (or Manage on a Home context card / the

switcher's Manage structures link) — rename/reorder layers and open the Properties / Elements / Views / Rates / Assignees managers. URL: /dashboard/structures.

Step by step

Create a master context

  1. Open Contexts.
  2. Click New context (top right).
  3. Give it a Name, an optional Description and a Colour.
  4. Leave Parent context set to None (master context).
  5. Click Create context. It appears at the top level of the tree, tagged Master.

Add a sub-context

  1. On any context row, click the (more) button → Add sub-context.

(Or click New context and pick a Parent context from the list.)

  1. Fill in the name, description and colour, then Create context. It appears nested beneath its

parent, indented one level.

Rename, recolour or move a context

  1. Click the button on the row → Edit.
  2. Change the Name, Description or Colour, or pick a different Parent context to

move the context (and everything beneath it) elsewhere in the tree.

  1. Click Save changes.
You can't move a context underneath itself or one of its own sub-contexts — that option is hidden, and the server refuses it too, so the tree can never loop back on itself.

Delete a context

  1. Click the button → Delete, then confirm.
  2. The context is removed. Any sub-contexts are kept — they move up to the deleted context's

parent rather than being deleted with it, so you never lose a branch by accident. The context's layers are deleted with it.

Manage a context's layers

  1. Click the ▸ chevron on the left of a context row to expand it. Its Layers section

appears beneath, showing that context's layer tree (and a N layers badge on the row).

  1. Click New layer to add a master layer, or a layer's Add sub-layer to nest one.

Give it a name, optional description and colour, and (optionally) a parent layer.

  1. Edit or Delete a layer from its menu, exactly like contexts. Deleting a layer

promotes its sub-layers up to its parent — they aren't deleted.

  1. Reorder a layer with the ▲ / ▼ buttons on its row (shown when it has a sibling, greyed out at

the ends). Layers reorder within their own group — master layers reorder among the masters, and a layer's sub-layers reorder among themselves; the arrows never move a layer to a different parent.

  1. A layer's parent must be another layer in the same context — you can't move a layer into a

different context's structure.

Populate a context's items

  1. Expand a context (chevron). Below its Layers is an Items section, showing the items that

fill the layer structure (and a N items badge on the row). Each item shows a colour dot, its abbreviation chip (with the icon, if set) and its name, with the layer it fills on the right.

  1. Click New item to add a top-level item. If the context has more than one master layer, pick

which Layer it fills; otherwise it fills the only one. Give it a Name, and optionally an Abbreviation (leave blank to auto-generate), an Icon (an emoji or short label) and a Colour. Click Create item.

  1. To nest an item, open a parent item's menu → Add nested item. The new item fills a layer

one step below the parent's layer (picked automatically when there's only one). This option only appears when the parent's layer actually has a sub-layer to fill.

  1. Edit an item from its menu to change its name, abbreviation, icon or colour, or to move it

under a different parent item (you can only choose parents that fill the layer above).

  1. Reorder an item with the ▲ / ▼ buttons (shown when it has a sibling, greyed out at the ends);

items reorder within their own group, like layers.

  1. Delete an item from its menu. Because nested items can't exist without their parent,

deleting an item also deletes everything nested beneath it — the confirmation tells you how many.

Add the layers first — items populate the layer structure, so the New item button only appears once the context has at least one master layer.

Control who can see and interact (access)

Access is managed with the eye / access icon, not a field in the editors. Every structure (context), item (a workspace / project / record row) and record carries one, and clicking it opens the access dialog:

  • On the Structures screen, each context block header has an access icon next to its name.
  • On the Contexts work plane, item cards and column headers carry the icon, and an open record's

detail view has one too.

Choose a level:

  1. Open — anyone in the organisation can see and interact.
  2. Closed — anyone can see it, but only members can interact (it's read-only for everyone else).
  3. Private — only members (and owners/admins) can see it at all.

Add members. Below the level, add people, departments or visibility groups and give each a role — Manager (can also manage access), Member (can take part) or Viewer (read-only). Managers, assignees and existing collaborators always keep access.

Owners and admins always see and manage everything. The icon is tinted by level — a padlock for Private, an eye for Closed, a muted eye for Open. Access flows down. A level set on a context or item is inherited by everything inside it, and a child can only be made more restrictive than its parent, never more open. If you can't see a parent, you can't see anything nested inside it.
Access levels replaced the older per-item "Who can view" visibility-group chips: choose a level and add members in the access dialog instead. Visibility groups still exist (Settings → Visibility groups) and can be added as members here.

Manage a context's properties

  1. Expand a context (chevron). Below its Layers is a Properties section listing that context's

properties (and a N properties badge on the row).

  1. Click New property. Give it a Name (e.g. Title, Owner, Status), pick a Value type

(Text, Number, Date, Yes/No, Select or Person) and a Role:

  • Field — a user-editable attribute.
  • Data — a derived or system value.
  • Filter — a saved query / segmentation.
  1. Edit or Delete a property from its menu. Each property row shows its value type and

role as small badges, plus ▲ / ▼ arrows to reorder it.

  1. For a Select property, an Options row appears under it: type a label and click + to add

a choice, or the bin icon on a chip to remove one. Use the ◀ / ▶ arrows on a chip to reorder the choices (they appear when there's more than one option, greyed out at each end) — the order you set is the order they appear in the element's value dropdown. Elements then pick their value from this list (and a value outside the list is rejected). With no options defined, a Select property falls back to free text.

  1. Reorder properties with the ▲ / ▼ buttons on each row (they appear when a context has more than

one property, and are greyed out at the top and bottom). The order you set here is the order properties appear everywhere else — the columns of a grid view, the field lines on list and kanban cards, and the inputs in the element editor.

Manage a context's elements

  1. Expand a context. Beneath Properties is an Elements section listing that context's content

(and a N elements badge on the row). Each element shows its type and a filled/total count of how many property values are set.

  1. Click New element. Give it a Name and a Type (Record, Content or Emoji). You can also

place the element inside one of the context's items (pick a Layer item, e.g. PM Tool), and — once placed — nest it under another element in that item (Nest under), so content forms a Record → Post → Block hierarchy. Leave the layer item as Context-level to keep it unplaced. A placed element shows the item's abbreviation chip in the list, and nested ones are marked with a . If the context has properties, you'll see a Property values panel — fill in a value for each property. The input matches the property's value type: a Number property shows a number box, a Date property a date picker, a Yes/No property a Yes / No / — chooser, a Person property a dropdown of your team, and Text / Select a text box. Invalid values (e.g. letters in a number field) are rejected when you save.

  1. Edit an element to change its name, type or any property value (clear a field to remove that

value). Delete removes the element and its values.

  1. Reorder elements with the ▲ / ▼ buttons on each row (shown when a context has more than one

element, greyed out at the top and bottom). This order is the order elements appear in the context's views — the rows of a grid or list, and the cards within each kanban column.

An element only holds values for its own context's properties. Add the properties first (in the Properties section) so elements have fields to fill in.

Manage and use a context's views

  1. Expand a context. Beneath Elements is a Views section (and a N views badge on the row).
  2. Click New view. Give it a Name and a Layout:
  • Grid — a table with one row per element and one column per property.
  • Kanban — columns of element cards. Pick a Group by property to bucket the cards by that

property's value (elements with no value go in a No value column); leave it as None for a single column.

  • List — a simple list of elements, each with a one-line summary of its values.
  1. Click a view's name to open it — the context's elements render in that layout right there.

Click again to collapse it. Values are shown in a friendly form: a Yes/No property reads "Yes"/"No", a Person property shows the person's name, and a Date shows e.g. "15 Jun 2026".

  • Search the view. A search box sits at the top of every open view. Type to filter to the elements

that match — it looks at each element's name and its values as shown (so searching "Yes", a person's name or "15 Jun 2026" works, not just the raw stored value). Clearing the box shows everything again. The search filters whichever layout you're in — grid rows, kanban cards or list items.

  • Show or hide grid columns. In a Grid view, a Columns button (top right of the view) opens a

checklist of the context's properties — untick one to hide its column, tick it again to bring it back. The Element name column is always shown. This is a personal view tweak for the current session (it isn't saved), and it doesn't change the data or the property itself.

  1. Edit values right in a grid. In a Grid view, owners and admins can **click any cell to edit it

inline — a typed input appears matching the property (a text box, number box, date picker, a Yes/No/— chooser, a person dropdown, or a Select option list). Press Enter or click away to save, Esc to cancel; clear a cell to remove its value. Only the cell you change is saved — the rest of the row is untouched, and the same checks apply as in the element editor (a number must be a number, a Select value must be one of the options, a Person must be a team member). Kanban and list views remain read-only — use the grid (or the element editor in Elements**) to make changes.

  1. Edit or Delete a view from its menu. Deleting a view doesn't touch the elements.

Set rates against layer items

Rates capture what work is worth — a Client rate (what you invoice, your earnings) and a Worker rate (what a person is paid, your cost) — against your layer items, with the rate following the hierarchy.

  1. Expand a context and find the Rates section. Each layer item shows its current Client rate

(owners/admins only) and your Worker rate. A rate shown in italics is inherited from a parent item — hover it to see "Inherited from [item]". A dash (—) means no rate applies yet.

  1. Open an item's menu:
  • Set client rate (owners/admins) — invoiced rate for that item.
  • Set worker rate — your own pay rate (owners/admins can choose which worker the rate is for).
  • Rate history… — see every rate set directly on the item, grouped Active / Future / Past with

their start/end dates; edit or delete any of them here.

  1. In the dialog enter the hourly rate, a start date and an optional end date (leave it blank

for an open-ended rate), then Set rate.

How inheritance works: a rate you set flows down to child items that don't have their own (shown in italics as inherited), and is copied up to parent items that don't already have a rate — so setting one rate sensibly covers the whole branch. A nearer item's own rate always wins. You can keep several rates over time; the one whose dates cover today is the active one.
Who sees what: a team member only sees and manages their own worker rate. Owners and admins see and manage all rates, including client rates and other people's worker rates.

Assign people to layer items

In the Assignees section (owners/admins), each layer item lists the people assigned to it. Click Assign to add a team member, or the × on a chip to remove them.

What each screen shows

  • The tree — every context as an indented row with a chevron, its colour dot, name and description.

A top-level context shows a Master badge; a context with layers shows a N layers badge.

  • Expanded context — a Layers section (its layer tree), an Items section (the populated

structure), a Properties section (its schema), an Elements section (its content) and a Views section (its layouts), each with a New … button and per-row menus (owners/admins). The element editor includes a Property values panel; opening a view renders the elements in that layout.

  • New context button — owners/admins only.
  • ⋯ menu (owners/admins only) — Add sub-context, Edit and Delete for that row.
  • Empty state — when no contexts exist yet, a prompt to create your first master context.

Tips and good to know

  • Owners and admins manage contexts; everyone else can view the tree (read-only) — the **New

context button and the ⋯** menu are hidden for them.

  • Deleting a context promotes its children rather than removing them — a safe, non-destructive

delete.

  • Contexts are the foundation of Threadwork's data model — structure (layers + items), schema

(properties), content (elements) and bespoke layouts (views) are all live, and workspaces and projects are themselves contexts under the hood.

Troubleshooting

| Problem | What to try | | --- | --- | | I don't see a New context button | Only owners and admins can manage contexts. Ask an owner/admin, or check your role in People. | | The parent I want isn't in the Parent context list | You can't move a context under itself or its own descendants — those are filtered out to prevent loops. | | I deleted a context but its sub-contexts are still there | That's expected — sub-contexts move up to the deleted context's parent instead of being deleted. | | There's no New item button | A context needs at least one master layer first — items populate the layer structure. Add a layer, then add items. | | Add nested item is missing on an item | That item's layer has no sub-layer to fill, so it's the deepest level. Add a sub-layer in Layers to nest items under it. |

Related guides